# 提取指定的列 cat HD786_tumor.vcf| cut -d ‘;‘ -f 2 > HD786_tumor.plusmark.vcf # 查看文件分割符是空格还是制表符: sed -n l *.txt # 如果是制表位(TAB),就会显示\t, 如果是空格,就会原样显示。(sed中n后面的l是小写的L) #提取指定行: #!/bin/bash for i in `find -name "*.prefix"` #查找prefix为后缀的所有文件 do echo $(basename ${i} .prefix) >> total.txt # 打印显示不带路径,后缀(prefix)的文件名称 # shell提取文件指定行的内容: sed -n ‘1,2p‘ ${i} >> total.txt # 使用>>而不是>进行重定向,可以追加写入文件,而不覆盖之前的文件内容。 # 使用追加重定向一定要注意,每次重新运行之前一定要删除之前的错误文件,不然一直追加。。。 done # 结果为: # NG19-GXH1039 # Total_Number_of_Sites Number_of_Somatic_Sites % # 1 0 0.00 # NG19-GXH1040 # Total_Number_of_Sites Number_of_Somatic_Sites % # 5 2 40.00 # NG20-GXH0020 # Total_Number_of_Sites Number_of_Somatic_Sites % # 3 0 0.00 # …… # …… # 批量删除没用的信息,只留有用信息 for dir in {$TEST,$TEST_1,$TEST_2,$TEST_3} do cd $dir sed -e ‘/window/d‘ $dir/nohup.out > $dir/nohup_1.out sed -e ‘/scan/d‘ $dir/nohup_1.out > $dir/nohup_.out sed -e ‘/consumed/d‘ $dir/nohup_.out > $dir/nohup_1.out # 只留样本id以及结果 sed -e ‘/load/d‘ $dir/nohup_1.out > $dir/nohup_.out rm $dir/nohup_1.out done