[Linux]Shell快速學習小總結[TBD]

來源:互聯網
上載者:User

Shell版本
sh:Bourne Shell,最初UNIX的shell。
csh:C shell。
ksh:Korn shell。
bash:Bourne Again Shell。 Linux預設shell。
tcsh:C shell的擴充。
pdksh:ksh不免費,這個免費。

echo -n "Date and time is:"            -n不換行。
echo "your name is: `whoami` "         ``會將其中的字串解釋成命令。

shell指令碼執行方式
bash< xxx.sh:從xxx.sh中讀取命令列並執行。
bash xxx.sh:可帶參數。
chmod a+x xxx.sh:使xxx.sh對所有使用者有“執行”許可權。輸入指令碼名可以直接執行。

特殊字元
雙引號:除$美元, `倒引號, \反斜線之外,其餘都視作一般字元。
單引號:單引號內部的字元都視作一般字元。
倒引號:左上方Esc下面的鍵,內部字串被解釋為命令。shell先執行,並以其結果代替整個倒引號部分。
反斜線:把特殊字元變成一般字元,阻止shell把其後面的字元解釋為特殊字元。

I/O重新導向
輸入:<作用是把命令的stdin重新導向到指定檔案,從檔案中讀取內容作為輸入。
輸出:>作用是把命令的stdout重新導向到檔案,執行的結果寫入到檔案中。執行多個命令到同一檔案,前面命令會被覆蓋。
輸出附加:>>,附加到檔案後面,不會破壞原檔案內容。
即時檔案:<<, 由"<<",一對標記符及其間的若干輸入符組成。允許把shell程式的輸入行定向到一個命令中。?????

注釋:#開始表示注釋。#!後面表示shell的絕對路徑。#! /bin/csh         #! /bin/bash
管道線:以|隔開的若干命令。每個命令都有獨立進程,前一個命令輸出作為下一個的輸入。

命令執行操作符
順序執行:可以執行一條命令,也可以執行多條,以“;”分開,前面執行失敗不影響後面繼續執行。
邏輯與:   命令1&&命令2,命令1成功,繼續命令2。否則不繼續。執行成功返回0,否則非0。
邏輯或:   命令1 || 命令2,執行1,不成功執行2;否則,1成功,則不執行2。

變數
變數名區分大小寫。賦給變數的值如果有空格,定位字元或換行,用雙引號。同一變數,可以一次存放int,另一次存放string。
通過貨幣符號訪問,如yourname=$myname;

內部變數
$#(傳給程式的參數個數,不包括本身)
$?(最後一條命令完成的執行結果)
$0*(自己的名字)
$*(傳給程式的所有參數的字串,不包括本身)

環境變數
HOME:/home/username
LOGNAME:使用者的註冊名,由Linux自動化佈建。它是系統與使用者互動的名字。
MAIL:使用者系統郵箱路徑,/var/spool/mail/username
PATH:shell從中尋找命令的目錄列表。
PS1:定義了使用者的主提示符是如何構成的。如\u@\h:\w#對應比如wgsupport@Firebox:~#。[\u@\h \W]\$對應[ryo@t430-lap Documents]$。
PWD:使用者當前工作目錄的路徑。
SHELL:使用者當前使用的shell,也指出了使用者shell解釋程式放在什麼地方。
TERM:使用者終端類型。

位置參數
shell指令碼被別人調用時可以傳入參數,第一個$1,第二個$2直到$9。
用set可以設定或重設參數。
當參數大於9時,用shift左移參數。shift移動一個,shift 4移動4個。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.