* 代表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