2022-08-12 02:39:01, 小迎子 上海欧易生物医学科技有限公司
Linux具有开源,处理性强等优点。
并且由于生物数据量较大,对数据处理性能要求更高,
所以生物信息分析软件大多都是针对linux系统进行开发的。
在日常的生物信息分析中,
我们几乎离不开linux平台,
今天我们给您介绍的小命令你可能常常使用,
能够帮助我们简单舒适的处理手头上庞大的生物信息数据。
一,常用的小命令
cd 打开文件目录
ls 显示文件
ls -al |grep ''^d'' 显示目录ls -al |grep ''^[^d]'' 在一个目录中查询不包含目录的所有文件
less 文件名 查看文件内容 按“q” 退出
cat 文件名 打开文件,可以多次打开几个文件
cat > 2.txt (用定向符创建文件,填写内容后,按ctrl+d保存内容)
grep -参数 文件名
-i 不区分大小写
-v 显示不符合条件的所有行
-c 显示符合条件的所有行数(符合条件的数量)
mkdir mywork 建立mywork这个目录
cp filename1 filename2 拷贝文件或目录
mv 源文件或目录 目标文件或目录 移动或重命名文件 cut -f ‘1,5’文件 剪切文件的第1列和第5列
head -2 文件名 显示2行
head -100 文件名 | tail -10 >>a.log 提取文件第91-100行数据
wc -参数 文件名 统计文本大小,字符多少,行数
-c 统计文本字节数
-m 统计文本字符数
-l 统计文本有多少行
sort – 参数 文件名 对文件进行排序
-n 对文件按照数字排序
-r 反向排序
uniq -参数 文件名 对文件去重,去重前需要使用排序
split -参数 文件名 对文件进行切割
-100 (每100行切割成一个文件)
-C 25m/b/k (每25兆/字节/K 分割成一个文件)
| 管道符号,把上一条命令的结果传输给下一条命令
“>” 和“>> ” 重定向写入文件中
“>”相当于“w”清空并写入
“>>”相当于“a” 追加进文件
sed -i ‘s/a/b/g'' 文件 将文件中的a全部替换成b
awk -F ‘分割符'' Pattern {action} 文件名 使用指定的字符对每一行数据进行分段,默认是空格
-F后面跟的是分隔符
pattern 就是action执行的条件,这里可以使用正则表达式
(awk的功能太强大了,之前的公众号中也有提及过可以参考)
bash shell.sh 运行shell.sh脚本
dos2unix 文件
将Windows——>linux
(由于Windows和Linux下的换行符不同,所以我们在Windows下面下的代码需要使用dos2unix 转换成Linux下的换行符,否则运行shell脚本会报错)
unix2dos 文件 将 linux——>Windows
rm xx.txt 删除xx.txt文件
rm -rf 删除所有文件目录和目录下的所有文件,谨慎使用。
二,逐行处理
我们经常需要对文体文件进行逐行处理,那么在Shell里面如何获取每行数据,然后处理该行数据,最后读取下一行数据,循环处理呢.给大家介绍以下三种方法:
1.通过read命令完成.最简便
read命令接收标准输入,或其他文件描述符的输入,得到输入后,read命令将数据放入一个标准变量中.
利用read读取文件时,每次调用read命令都会读取文件中的"一行"文本.
当文件没有可读的行时,read命令将以非零状态退出.
1 cat data.dat | while read line
2 do
3 echo "File:${line}"
4 done
5
6 while read line
7 do
8 echo "File:${line}"
9 done < data.dat
2.使用awk命令完成,最强大
利用awk读取文件中的每行数据,并且可以对每行数据做一些处理,还可以单独处理每行数据里的每列数据.
1 cat data.dat | awk ''{print $0}''
2 cat data.dat | awk ''for(i=2;i<NF;i++) {printf $i} printf "\\n"}''
第1行代码输出data.dat里的每行数据,第2代码输出每行中从第2列之后的数据.
如果是单纯的数据或文本文件的按行读取和显示的话,使用awk命令比较方便.
3.使用for var in file 命令完成
for var in file 表示变量var在file中循环取值.取值的分隔符由$IFS确定.
1 for line in $(cat data.dat)
2 do
3 echo "File:${line}"
4 done
5
6 for line in `cat data.dat`
7 do
8 echo "File:${line}"
9 done
如果输入文本每行中没有空格,则line在输入文本中按换行符分隔符循环取值.
如果输入文本中包括空格或制表符,则不是换行读取,line在输入文本中按空格分隔符或制表符或换行符特环取值.
可以通过把IFS设置为换行符来达到逐行读取的功能.
注意,IFS的默认值为:空白(包括:空格,制表符,换行符)
从生物信息的从业者的角度看,我们更关注数据分析,linux命令行操作系统是必须要掌握的技能,掌握了以上介绍的小命令和逐行处理的方法,对于数据处理是不是更得心应手了呢?还有多的处理技巧等着你去总结掌握!
#End#
当二维码出现的瞬间
我用大拇指紧紧的按住
果然停住了
小样儿 让你跳
识别了二维码
喔
一个不小心就关注了“欧易生物”
也罢
内容还不错
那就每天来看看好了
分子生物和程序编码的婚礼
由一种叫做生物信息分析员的生命体所主持
05-15 WAYEAL皖仪
“世界计量日”——计量行业的可持续发展【专题直播,精彩持续】05-15 福禄克公司
干货分享 | 全面掌握新能源汽车维修检测工具的安全操作与精准测试05-15 福禄克公司
名单公布 | 2024现代电能质量书本申领活动寄送05-15 福禄克公司
【新升级】Fluke iSee安卓版APP,更专业,更易用!05-15 福禄克公司
操作指南 | LPGC 安装&优化,快速入门!05-15 Restek
新国标 | Restek 法医毒物领域产品解决方案05-15 Restek
细胞系鉴定试剂盒焕新上市:免费试用+礼品双重惊喜!05-15 赛默飞基因科学
德国元素助力AOAC食品检测技术与标准研讨会05-15 德国元素
血液专题 | 你敢信?锻炼身体也会害人?05-15
Ugo Basile口面部疼痛测试仪 | 新型大小鼠口面自我赏罚实验——为临床前口面部疼痛评估提供卓越解决方案!05-14 玉研仪器
走近用户,聆听心声 | 福立仪器走访国家级重点技工院校,强化合作与交流05-14
风雨携手共进,十载春华秋实——检测家十周年庆典!05-14 检测家
最高1000万!这35个地区均可领取补贴!现行有效的实验室政策汇总05-14
仪器租赁 | 沃特世 液质联用,月租金52000元起05-14
精准引领精彩 雷磁“智”向未来——新品发布会05-14
倒计时1天|《解析:qPCR 应用、技术要点与数据分析》线上直播05-14
智能科技,引领未来——天瑞仪器盛装亮相2024国际电子电路上海展05-14
同济大学与天瑞仪器产教融合创新实践基地挂牌仪式顺利举行05-14
VOC.5 | 石油化工行业供气 “宠儿”!05-14 普敦科技