1. 程式人生 > >linux的一些拓展命令

linux的一些拓展命令

起別名

alias 別名 = '命令名' (臨時加別名)

alias 檢視別名

unalias 別名 刪除別名

命令執行時順序

  1. 執行用絕對路徑或相對路徑執行的命令

  2. 執行別名

  3. 執行bash的內部命令

  4. 執行按照$PATH環境變數定義的目錄查詢順序找到的第一個命令

輸出重定向

與標準IO流一樣,Shell對於每一個程序預先定義3個檔案描述子(0,1,2)

分別對應於

  • STDIN 標準輸入

  • STDOUT 標準輸出

  • STDERR 標準錯誤輸出

預設的,標準輸入為鍵盤,但是也可以來自檔案,或管道(pipe |).. 裝置名為 /dev/stdin

預設的標準輸出為終端,但是也可以重定向到檔案.裝置名為/dev/stdout

預設地,標準的錯誤輸出到終端,但是也可以重定向到檔案。裝置檔名為/dev/stderr

 

輸入重定向

tr "a-z" "A-Z" < /etc/passwd        將小寫轉為大寫(輸入重定向),在螢幕輸出

自動建立檔案

cat > log.txt << EXIT

這裡的EXIT只是一個標誌,可變動,再輸入這個標誌或ctrl+d 即可結束寫入

 

正確輸出和錯誤輸出同時儲存

命令 > 檔案 2>&1 覆蓋方式,把正確輸出和錯誤輸出都儲存到同一個檔案當中。

命令 >> 檔案 2>&1 追加方式,把正確輸出和錯誤輸出都儲存到同一個檔案當中。

命令 &> 檔案 覆蓋方式,把所有輸出都儲存到同一個檔案當中。

命令 &>> 檔案 追加方式,把所有 輸出都儲存到同一個檔案當中。

命令 >> 檔案1 2>>檔案2 正確輸出追加到檔案1中,錯誤輸出追加到檔案2中。

& 把程式放到後臺執行,但是當終端關閉時,程式可能關閉.

nohup 能保證終端時,程序依然存在

分析例項: 2>&1 >/dev/null 2>&1 為例:

1. > 代表重定向到哪裡
2. /dev/null 代表空裝置檔案
3. 2>代表重定向stderr標準錯誤
4. & 表示等同於的意思,2>&1 表示2的輸出重定向等同於1
5. 1表示stdout標準輸出,系統預設值是1.所以 > /dev/null等同於1>/dev/null

WC[option] filename 統計檔案字數

功能: 統計檔案中的檔案行數.字數,字元數

選項:

-l lines 統計檔案的行數

-w words 統計檔案的單詞數(英文單字)

-c 統計檔案的位元組數

-m 統計檔案字元數

 

若預設檔名則是標準輸入

wc: ....... ctrl+d結束

命令連線符

; 命令1:命令2 用分號間隔的革命了按順序執行,命令之間沒有邏輯相關聯

&& 命令1&&命令2 邏輯與關係, 命令執行1成功後.命令2才能被執行

|| 命令1執行失敗,命令2才執行,.

持續更新!!!