awk作为强大的文本分析工具其功能十分强大。
其语法结构为 :awk “{pattern + action}” {filename}
for example:
1.输出任意一列数据
awk "{print $n}" filename
其中n表示域,分割域的默认符是空格或者Tab
2.可过滤数据,比如输出第n域大于80和第m域小于20的数据
awk “{if($n>80&&$m<20) print$0}" filename
3.利用正则表达式数据输出符合要求的数据,即匹配输出
awk “$0 requirement{print $0}" filename
4.输出固定行
awk ” requirement“ filename
5.合并文件
awk ”BEGIN{while((getline<"filename1")>0)1[$1]=$0}$1 in 1{print $0"\t"1[$1]}" filename2
6.fastq转换fasta
awk “{getline seq ; getline plus ; getline qual ; sub("@".">",$) ; print $0 "\n"seq}" filename
补充一个sed命令:
sed -n "xxx" filename(输出第几行)
sed -n ”xxx-yyy" filename(输出第xxx-yyy行)
就简单介绍这几个,其他的在使用的时候可以再自行搜索。