这些21个不太好搜索其含义的特殊符号你都知道吗?
Linux命令中有一些常用符號,看到時不一定好查詢它們的功能和含義,這里列舉一些常見的符號和解釋,歡迎大家補充完善。
|: 管道符,在兩個相鄰命令之間傳遞數(shù)據(jù);如ls | head把ls命令的輸出傳給head命令,只顯示前10個文件/文件夾。
*: 通配符,通常用于匹配任意字符串,如ls *.fq.gz匹配當(dāng)前目錄下所有后綴為.fq.gz的文件,前綴可以是任何字符。
~: 波浪線,指代家目錄。鍵盤左上角ESC下的按鍵,配合Shift輸入。
.: 通常指代當(dāng)前目錄,如./run.sh運行當(dāng)前目錄下的run.sh腳本;multiqc -d . -o multiqc對當(dāng)前目錄下的文件執(zhí)行multiqc匯總。
../:?表示上一層目錄。
>: 輸出重定向。ls > filename把ls的輸出結(jié)果寫入文件filename。具體見Linux學(xué)習(xí) - 管道、標準輸入輸出。
<: 輸入重定向。paste <(ls *_1.fq.gz) <(ls *_2.fq.gz)把兩個ls命令的輸出傳遞給paste作為其輸入。具體見Linux學(xué)習(xí) - 管道、標準輸入輸出。
^: 用于正則表達式中表示以什么開頭。grep '^>' test.fa獲得所有>開頭的行,也就是FASTA文件的名字行。sed 's/^>//g'替換開頭的>為空,第一個和第二個/之間的為被替換的內(nèi)容,第二個和第三個/之間的為要被替換成的內(nèi)容。
注意:grep '>' file和grep > file的區(qū)別??梢钥纯礃銓崯o華的4條致命命令!還有什么。
`: 反引號,鍵盤左上角ESC下的按鍵。`ls`表示運行l(wèi)s命令并捕獲其輸出。
$(ls): 等同于`ls`,表示運行l(wèi)s命令并捕獲其輸出。與把命令括在反引號中基本相似,但更推薦使用。新學(xué)習(xí)時可直接使用此種方式。
;: 多條語句寫在一行需要加分號分割。如 for samp in `tail -n +2 sampleFile | cut -f 1`; do ${samp}_related_things; done 用分號分割開3個語句。循環(huán) `tail -n +2 sampleFile | cut -f 1` 的輸出并進行一系列樣品相關(guān)的操作。
\t: TAB鍵
\n: 換行
$或${}: 用于獲取變量的值。如上面的${samp}。加和不加{}的通常無區(qū)別,但在一些情況會導(dǎo)致變量名字識別出錯。如${samp}_related_things表示獲取變量samp的值,而$samp_related_things表示獲取變量samp_related_things的值。
\r?或^M: 回車符;?^M的輸入方式是Ctrl+v;Ctrl+m; 通常windows下的文件拷貝到linux系統(tǒng)上,需要執(zhí)行sed -i s/\r//g file去掉末尾的回車符。
awk中的$0, $1: $0表示整行,$1表示當(dāng)前行第一列,$2表示當(dāng)前行第二列,以此類推。
''與"":單引號和雙引號通?;煊?#xff0c;但雙引號中的變量可以獲取其值。
&: 把程序放到后臺運行,具體見耗時很長的程序忘加nohup就運行了怎么辦?章節(jié)。
\\: 通常是轉(zhuǎn)義符,把特殊變量轉(zhuǎn)義為普通字符,如${HOME}表示獲取家目錄,\${HOME}就是一個字符串${HOME}。\\用于行尾時表示該行命令還未結(jié)束,后面還有跟隨的命令語句,常用于命令太長一行寫不下時。
a="a value": 等號用于bash中變量賦值時,前后都不能有空格。
<<: 表示讀入數(shù)據(jù),具體見Linux學(xué)習(xí) - 管道、標準輸入輸出。
更多Linux知識見:這個為生信學(xué)習(xí)打造的開源Linux教程真香!!!
往期精品(點擊圖片直達文字對應(yīng)教程)
機器學(xué)習(xí)
后臺回復(fù)“生信寶典福利第一波”或點擊閱讀原文獲取教程合集
總結(jié)
以上是生活随笔為你收集整理的这些21个不太好搜索其含义的特殊符号你都知道吗?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SCons的使用
- 下一篇: SCons命令 之 从入门到精通