Day 2 轉錄組分析--需要學會的linux操作

Linux操作系統爲生物信息學的數據處理提供了很好的平臺,因此,掌握一些高效的Linux系統操作技巧能夠讓我們的工作更加便捷。“優秀”的操作習慣就如同一把強有力的工具,panda都一步一步得試着操作了一遍,這是吸取別人優秀操作的機會,一定不能錯過~~

1.簡單的基礎命令

  • pwd 打印當前目錄的完整路徑
  • ls 列出當前目錄中的內容
    -l 表示用列表形式列出
  • > 覆蓋原文件
  • >> 添加到原文件底部
  • cd change directory
  • mkdir 創建目錄
    mkdir $(date +%F) 創建以今天日期爲名稱的目錄
  • rmdir 刪除空目錄
    刪除多個空目錄操作: find . -type d -empty -print | xargs rmdir
    對機器講的話 翻譯成 人話:find(查找) .(當前目錄下的) -type(類型爲) d(目錄) -empty(空的) -print(打印出來) | xargs(把管道符前打印的目錄一個一個的執行) rmdir(刪除任務)
  • rm 刪除文件或目錄
    -r 表示遞歸刪除(一個目錄中包含層級的文件時,可以用這個參數把整個目錄刪掉)
    -f 表示強制刪除(不要提示)
    (rm -rf 強制把多級目錄刪掉,也不要給提示,因此使用要謹慎)
  • touch 新建一個文件
  • mv 重命名或者移動(文件或目錄)
  • cat 具有查看文件和定向輸出文件的功能
    輸入 cat >test.txt之後會有光標提示要輸入的內容,然後control + C 停止輸入,不過要注意的是:內容書寫完畢後要換行再“control + C”,否則最後一行是無法保存的,就像我這樣👇,第三行的“o”就沒有保存進去!

  • less 也是查看文件的一個命令
    -S 使文本的一行(無論有多長也)只佔屏幕的一行
    -N 每一行加上行號
  • head 和 tail
    head -n 5 test.txt 查看test.txt的前5行
    tail -n 5 text.txt 查看test.txt的最後5行

2.練習題

1.在主目錄下創建/tmp文件夾,並且使其中包含1/2/3/4/5格式的文件夾系列
2.在創建好的文件夾下面,創建文本文件 xi.txt,並輸入內容,例如Hello world, Welcome to bioinfoplanet, Nice to see you。三句話分行顯示
3.在tmp/下創建 1~5這5個文件夾,然後每個文件夾下面繼續創建 1~5這5個文件夾, 並查看
4.增加一點難度:我想在練習三的每個目錄中都放進去一個文件xi.txt,內容還是練習二的內容
5.下載 http://www.biotrainee.com/jmzeng/igv/test.bed 文件,統計該文件總共有幾行,含有 H3K4me3 的是第幾行
6.下載 http://www.biotrainee.com/jmzeng/rmDuplicate.zip 文件,並且解壓,查看裏面的文件夾結構 (提示:瞭解tree命令)

3.答案

  1. mkdir -p /tmp/1/2/3/4/5 (學會使用-p參數)
  2. cat > xi.txt 然後分3行輸入內容:Hello world;Welcome to bioinfoplanet,;Nice to see you(回車鍵-換行;control+c-停止輸入)
  3. 首先pwd確保自己在 tmp/目錄下,先創建1-5這5個文件夾mkdir {1..5},然後每個文件夾下面繼續創建1-5這5個文件夾 mkdir {1..5}/{1..5},查看使用 tree tmp/(貌似這個操作也可以mkdir -p {1,2,3,4,5}/{1,2,3,4,5})
  4. tmp/目錄同時保證 xi.txt也在當前路徑,前面已經創建好25個目錄的基礎上,輸入命令echo tmp/*/* | xargs -n 1 cp xi.txt(自己不會做,抄的答案~)
  5. 下載文件命令:wget www.biotrainee.com/jmzeng/igv/test.bed
    統計行 wc -l test.bed or nl test.bed
    尋找行號 grep -n H3K4me3 test.bed
  6. 下載文件命令:wget www.biotrainee.com/jmzeng/rmDuplicate.zip
    解壓 unzip rmDuplicate.zip
    查看文件結構 tree rmDuplicate.zip(-p 查看權限;-h 查看文件小;-D 查看創建日期)

我覺得這份答案更詳細:https://www.jianshu.com/p/d3be74cb7829
因爲panda都是抄他的... ...


👆上面都是跟着豆花的轉錄組學習教程寫的,可是隻懂這些在實踐中還是不夠。於是參考着豆豆的這篇文章生信Linux文本處理三劍客,又深入學習了幾個功能強大的命令:

4.vim編輯器

在linux操作系統中,編輯文本不可避免得使用vim,一份vim的小抄(中文版),可以把它保存在瀏覽器的收藏夾裏,每逢操作時記得打開看一看,嘗試使用裏面的 快捷操作 替換簡單粗暴的 土方法,會讓我們的work更簡單高效~

4.1 vim編輯器顯示行號

  • vim的配置文件.vimrc(eg:可以在該文件內加入set number,從而爲vim編輯器添加行號)
  • 也可以在vi打開一個文件後,通過:進入 指令列命令模式 ,然後輸入set number,這樣的話,只會針對此次瀏覽,在當前文件內顯示行號(在此次瀏覽中,撤銷設置行號:set nonumber)
    什麼是 指令列命令模式?👇

vim 有三種模式

  • 一般命令模式
    使用vi打開一個文件後,當即呈現在我們面前的這個狀態,就是一般命令模式
  • 編輯模式
    在按下「i,I,o,O,a,A,r,R」任意一個字母之後就會進入編輯模式,這種模式下可以編輯文本。如果想要退回一般命令模式,按鍵盤上的ESC按鈕
  • 指令列命令模式
    vi 打開一個文件後,輸入「:/ ?」三個中的任何一個按鈕,就進入了指令列命令模式

4.2 關於vim的其他小技巧

~ 大小寫切換
:%s/old/new/g 替換全部 (g指global全局替換)
:%s/old/new/gc 逐個替換(比較保險,不易出錯)
0移動到行首
$移動到行尾
g到達第一行
G到達最後一行

gG也可以通過以下3個來實現
H移動到當前頁面頂部
M移動到當前頁面中部
L移動到當前頁面底部

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章