Linux_note shell中特殊符號


* 代表0個或多個任意字符

? 只代表一個任意字符

# 註釋符號

\ 脫意符號

[root@zekLinux ~]# ls #1.txt   #將後面內容註釋 只運行了ls

111      1.tar  3.txt            install.log         yasuo.zip

111.tar  1.txt  anaconda-ks.cfg  install.log.syslog

123.txt  2.txt  a.txt            yasuo

[root@zekLinux ~]# ls \#1.txt     \脫意字符將#原本意義去掉

ls: 無法訪問#1.txt: 沒有那個文件或目錄   此時將#1.txt作爲文件名 

[root@zekLinux ~]# touch \#1.txt|ls

111      123.txt  #1.txt  2.txt  anaconda-ks.cfg  install.log         yasuo

111.tar  1.tar    1.txt   3.txt  a.txt            install.log.syslog  yasuo.zip

| 管道符

$ 變量的前綴,獲得或使用變量時在其前加上$

!$  表示將上條命令中最後一個變量

[root@zekLinux ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/tmp/:/data/bin/:/root/bin

[root@zekLinux ~]# !$

$PATH

-bash: /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/tmp/:/data/bin/:/root/bin: 


沒有那個文件或目錄


;  用於兩條命令的中間(兩條命令寫在一行)

[root@zekLinux ~]# ls 1.txt ;ls 1.tar

1.txt

1.tar


~  用戶家目錄

[root@zekLinux ~]# ls ~

111      123.txt  #1.txt  2.txt  anaconda-ks.cfg  install.log         yasuo

111.tar  1.tar    1.txt   3.txt  a.txt            install.log.syslog  yasuo.zip


& 將命令放到後臺執行(在一條命令後加&)

[root@zekLinux ~]# sleep 10 &

[1] 1647

[root@zekLinux ~]# jobs

[1]+  Running                 sleep 10 &

[root@zekLinux ~]# jobs

[1]+  Done                    sleep 10

 

重定向符號:>,>>,2<,2<<,<

#echo "123">1.txt  > 覆蓋原文件1.txt的內容

[root@zekLinux ~]# echo "123">1.txt

[root@zekLinux ~]# cat 1.txt

123

若不想覆蓋用追加重定向 >>

[root@zekLinux ~]# echo "456">>1.txt

[root@zekLinux ~]# echo "789">>1.txt

[root@zekLinux ~]# cat 1.txt

123

456

789

反向重定向 < 把一個文件內容丟給一個命令

如:[root@zekLinux ~]# wc -l < 1.txt

    3

錯誤重定向:2>,2>>

[root@zekLinux ~]# ls 11111

ls: 無法訪問11111: 沒有那個文件或目錄

[root@zekLinux ~]# ls 11111 > 1.txt 同樣會覆蓋原文件內容

ls: 無法訪問11111: 沒有那個文件或目錄[root@zekLinux ~]# ls 11111 2> 1.txt

[root@zekLinux ~]# cat 1.txt   

ls: 無法訪問11111: 沒有那個文件或目錄

不覆蓋原文件內容:2>>

[root@zekLinux ~]# ls 11111 2>> 1.txt

[root@zekLinux ~]# cat 1.txt

ls: 無法訪問11111: 沒有那個文件或目錄

ls: 無法訪問11111: 沒有那個文件或目錄


[] 括號裏爲字符組合,代表字符中的任意一個

[root@zekLinux ~]# ls [123].txt

1.txt  2.txt  3.txt

[root@zekLinux ~]# ls [1-9a-zA-z].txt

1.txt  2.txt  3.txt  a.txt


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