专栏名称: 生信百科
依托高校科研平台,面向生物信息科研工作者。生物信息学习资料;常见数据分析技巧、流程;公共数据库分享;科研思路分享;
目录
相关文章推荐
医学美图  ·  一图读懂合集 ·  19 小时前  
伊洛  ·  北京消费者信心指数 ·  昨天  
火石创造  ·  开工大吉 ·  昨天  
医学影像沙龙  ·  心血管磁共振的CMR解读及诊断思路 ·  2 天前  
丁香园  ·  维生素 C + 维生素 B6,竟出大问题 ·  4 天前  
51好读  ›  专栏  ›  生信百科

实用命令吐血分享

生信百科  · 公众号  · 医学  · 2017-09-21 04:37

正文

本周给大家分享几个超级实用的命令,喜欢记得分享哦!

一、 Linux 系统巧用 rsync 拷贝数据

还在用 scp 拷贝数据么?换 rsync 吧!rsync 是一个远程数据同步工具,可以实现 scp 的功能,但远比 scp 更强大。使用 scp 拷贝数据,每次都是把文件全部复制过去 (无论相同的文件是否存在),而 rsync 第一次执行是把所有文件同步过去,再次执行时,只把修改过的文件再同步一次。rsync 的强大之处还在于,可以使用通配符来决定是否拷贝某些文件,如:

rsync -rav -e ssh --exclude='00.*' ./*  usrname@host:/your/path/ rsync -rav -e ssh --include='01.*' ./*  usrname@host:/your/path/

可以使用 --exclude 来排除自己不想复制的文件,使用 --include 仅拷贝自己需要的文件;

这个命令远比想象中的强大,我只开发了我常用的部分,大家可以多尝试。

二、Linux 系统拷贝文件保留文件目录结构

每个 Linux 命令都有很多可选的参数,可以用 command --help 的形式查看,有些参数可以帮助我们完成很复杂的任务。例如:拷贝文件的时候如果想保留文件的目录结构,添加 --parent 参数即可。

cp -r --parent ./*/00.raw_data ./test1/

原始文件夹和拷贝后的文件夹的目录结构如下:

这里只是举个简单的例子,善用 --help 可以大大加快工作效率。

三、批量生成 md5 的值

有时候我们需要生成某个文件夹下所有文件或者某些文件的 md5 的值,而 md5sum 命令默认只对单文件操作,这时候可以使用 find 和 xargs 命令来实现。


find ./ -type f -name "*.bam" | xargs md5sum > check.md5 find ./ -type f -name "*" | xargs md5sum > check.md5

第一个命令会生成当前文件夹以及所有子文件夹下 bam 文件的 md5 值;

第二个命令会生成当前文件夹以及所有子文件夹下所有文件的 md5 值。

四、巧用 column 命令查看 tab 分割文本

对于某些 tab (或者逗号) 分割的文本,使用 less -S 查看实在是烧脑。使用 column 命令,可以使 tab (或其它分割,如逗号) 分割文本更直观,更易懂!

column -t test.gff3 | less -S column -s , -t data.txt | less -S

-t 参数是创建表格,易于阅读;

-s 参数可以指定分隔符,将文本分割。

下面是直接使用 less -S 查看 gff 文件和先用 column -t 处理再用 less -S 查看的对比:

接着是使用 less -S 查看逗号分割 csv 文件和先用 column -t 处理再用 less -S 查看的对比:

五、R 中多行文本变一行

在 PDF 等带有格式的文件中复制文本,粘贴到 Word 中总是带有换行符,手动删除非常麻烦,使用下面的命令可以完美解决这个问题。





请到「今天看啥」查看全文