type
怎麼知道這個指令是來自於外部指令(指的是其他非bash 所提供的指令) 或是內建在bash 當中的呢? 嘿嘿!利用type 這個指令來觀察即可
選項與參數: :不加任何選項與參數時,type 會顯示出name 是外部指令還是bash 內建指令
-t :當加入-t 參數時,type 會將name 以底下這些字眼顯示出他的意義: file :表示為外部指令; alias :表示該指令為命令別名所設定的名稱; builtin :表示該指令為bash 內建的指令功能;
-p :如果後面接的name 為外部指令時,才會顯示完整檔名;
-a :會由PATH 變數定義的路徑中,將所有含name 的指令都列出來,包含alias
echo
[root@localhost ~]# name=fun
[root@localhost ~]# echo $name
fun
read
[root@localhost ~]# read [-pt] variable
選項與參數:
-p :後面可以接提示字元!
-t :後面可以接等待的『秒數!』這個比較有趣~不會一直等待使用者啦!
declare
[root@localhost ~]# declare [-aixr] variable
選項與參數:
-a :將後面名為variable 的變數定義成為陣列(array) 類型
-i :將後面名為variable 的變數定義成為整數數字(integer) 類型
-x :用法與export 一樣,就是將後面的variable 變成環境變數;
-r :將變數設定成為readonly 類型,該變數不可被更改內容,也不能unset
less
假設我們想要知道/etc/ 底下有多少檔案,那麼可以利用ls /etc 來查閱,不過, 因為 /etc 底下的檔案太多,導致一口氣就將螢幕塞滿了~不知道前面輸出的內容是啥?此時,我們可以透過less 指令的協助,利用:
[root@localhost ~]# ls -l /etc|less
如此一來,使用ls 指令輸出後的內容,就能夠被less 讀取,並且利用less 的功能,我們就能夠前後翻動相關的資訊了! 按 Q 退出
sort
是很有趣的指令,他可以幫我們進行排序,而且可以依據不同的資料型態來排序喔!
-f :忽略大小寫的差異,例如A 與a 視為編碼相同;
-b :忽略最前面的空白字元部分;
-M :以月份的名字來排序,例如JAN, DEC 等等的排序方法;
-n :使用『純數字』進行排序(預設是以文字型態來排序的);
-r :反向排序;
-u :就是uniq ,相同的資料中,僅出現一行代表;
-t :分隔符號,預設是用[tab] 鍵來分隔;
-k :以那個區間(field) 來進行排序的意思
WC
如果我想要知道/etc/man.config 這個檔案裡面有多少字?多少行?多少字元的話, 可以怎麼做呢?其實可以利用wc 這個指令來達成喔!
選項與參數:
-l :僅列出行;
-w :僅列出多少字(英文單字);
-m :多少字元;
[root@localhost ~]# cat /etc/man.config | wc
alias, unalias
命令別名是一個很有趣的東西,特別是你的慣用指令特別長的時候!還有, 增設預設的選項在一些慣用的指令上面,可以預防一些不小心誤殺檔案的情況發生的時候!
[root@localhost ~]# alias rm='rm -i'
[root@localhost ~]# unalias lm