一、 linux基础知识复习
- 输入
pwd
/home/u2754
- 输入ls和ls的加强版
ls -lrt --color=auto
total 0
- cd是切换目录,cd -是切换到刚才的目录,cd ..是切换到上一级目录
-
mkdir
是创建目录,输入mkdir $(date +%F),生成以当前时期命名的目录
2019-06-04
-
rmdir
删除空目录,如果有多个空目录,使用find. -type d -empty -print |xargs rmdir
-
rm
删除文件或目录,rm -r 表示递归删除 -
touch
新建一个文件
touch mytest.txt
-
mv
重命名文件或者目录;移动A文件到B目录下
mv mytest.txt mytest1991.txt
mv mytest.txt fanfan
9.cat
重定向输出文本,就是替换文本中原来的内容
cat mytest.txt
空的
cat >mytest.txt
复制粘贴、或输入替换进去的内容
Enter切换到下一行,Ctrl+C
I love bioinformatics!
Dou and Hua
若预先不存在mytest.txt这个文件,会自动创建
-
less -SN
表示的形式加上制表符和行号 -
head -n
表示查看文件头n行;tail -n
表示查看文件尾n行 -
wc -l
计算文件有多少行 -
|
管道操作,前面的输出作为后面的输入,cat test.txt | wc -l
-
xargs
将之前的管道操作逐项操作 - 同时创建多层目录,只需要加上参数-p
mkdir -p tmp/1/2/3/4/5
tree
image.png
- 向目录5下创建xi.txt,并向其中输入Hello world, Welcome to bioinfoplanet, Nice to see you。
cd tmp/1/2/3/4/5
cat >xi.txt
image.png
- 在tmp/下创建 1~5这5个文件夹,然后每个文件夹下面继续创建 1~5这5个文件夹
mkdir -p {1,2,3,4,5}/{1,2,3,4,5}
image.png
- 想在17的每个目录中都放进去一个文件xi.txt
没弄出来
wget -c http://www.biotrainee.com/jmzeng/igv/test.bed
wc -l test.bed
10 test.bed
grep -rn "H3K4me3" test.bed
8:chr1 9810 10438 ID=SRX387603;Name=H3K4me3%20(@%20HMLE);Title=GSM1280527:%20HMLE%20Twist3D%20H3K4me3%20rep2%3B%20Homo%20sapiens%3B%20ChIP-Seq;Cell%20group=Breast;<br>source_name=HMLE_Twist3D_H3K4me3;cell%20type=human%20mammary%20epithelial%20cells;transfected%20with=Twist1;culture%20type=sphere;chip%20antibody=H3K4me3;chip%20antibody%20vendor=Millipore; 222 . 9810 10438 0,226,255
显示比较混乱
less -SN test.bed
1 track name="His (@ Brs) 50" url="http://chip-atlas.org/view?id=$$" gffTags="on"
2 chr1 9769 10673 ID=SRX539644;Name=H3K27ac%20(@%20HMEC);Title=GSM1383853:%20HMEC%20H3K27ac%20ChIP-Seq%3B%20
3 chr1 9776 10481 ID=SRX387611;Name=H3K27me3%20(@%20HMLE);Title=GSM1280524:%20HMLE%20Twist3D%20H3K27me3%20re
4 chr1 9788 10497 ID=SRX539646;Name=H3K4me1%20(@%20HMEC);Title=GSM1383855:%20HMEC%20H3K4me1%20ChIP-Seq%3B%20
5 chr1 9795 10434 ID=SRX387610;Name=H3%20(@%20HMLE);Title=GSM1280523:%20HMLE%20Twist2D%20H3%3B%20Homo%20sapi
6 chr1 9799 10446 ID=SRX1795468;Name=H3K27ac%20(@%20MCF-7);Title=GSM2175788:%20H3K27Ac%20ChIP-seq%20MCF7%2BE
7 chr1 9805 10419 ID=SRX1795465;Name=H3K27ac%20(@%20MCF-7);Title=GSM2175785:%20H3K27Ac%20ChIP-seq%20MCF7%2BE
8 chr1 9810 10438 ID=SRX387603;Name=H3K4me3%20(@%20HMLE);Title=GSM1280527:%20HMLE%20Twist3D%20H3K4me3%20rep2
9 chr1 9811 10465 ID=SRX539650;Name=H3K27ac%20(@%20MCF-7);Title=GSM1383859:%20MCF7%20H3K27ac%20ChIP-Seq%3B%2
10 chr1 9825 10306 ID=SRX1115312;Name=H3K27ac%20(@%20MCF%2010A);Title=GSM1829629:%20H3K27Ac%20ChIPSeq%3B%20Ho
test.bed (END)
按q退出
- 下载
wget -c http://www.biotrainee.com/jmzeng/rmDuplicate.zip
unzip rmDuplicate.zip
cd rmDuplicate
tree
image.png
二、vim编辑器的使用
- 使用vi file对文件进行操作
vi mytest.txt
默认进入命令模式 command mode
输入i进入insert mode
在左下角会多一个-- INSERT --
按ESC再退回命令模式
1.命令模式退出要注意
:x或者:wq 都是保存并退出
:q! 不保存强制退出
:w new_file 另存为新文件
在命令模式下注意,按u撤销
2.按ESC确保进入命令模式的前提下,输入:w进入末行模式,即在左下角最后一行出现文件名
image.png
image.png
三、linux文本处理三剑客
先下载数据 wget http://molb7621.github.io/workshop/_downloads/SP1.fq
统计行数 wc -l SP1.fq
统计fq序列数 wc -l SP1.fq | awk '{print $1/4}'
1.得到行号 awk '{print NR}' SP1.fq
2.利用BEGIN处理4行
awk 'BEGIN {print 1%4}'
awk 'BEGIN {print 2%4}'
awk 'BEGIN {print 3%4}'
awk 'BEGIN {print 4%4}'
3.根据条件判断取出相应的行
awk 'NR % 4 == 1' SP1.fq
4.利用管道符方便操作
awk 'NR % 4 ==2' SP1.fq | sort | uniq -c | wc -l
感觉还有很多没弄明白,明天答辩完再弄吧
网友评论