Shell入門知識(一)

2021-06-19 16:13:55 字數 2680 閱讀 7721

當我們輸入乙個命令時,就是shell開始工作的時候了。開始學習shell的時候都是在命令列中進行,慢慢的當我們經常執行一些重複的命令時,就有了把命令寫到檔案進行自動化執行的需求了。shell語言簡單,容易掌握,下面介紹一些shell基本的入門知識,包含它的語法,如何執行等等。 

命令列命令說明

命令 > 檔案

將命令的輸出結果重定向到檔案

命令 &> 檔案

將命令的輸出結果和錯誤訊息一起重定向到檔案

命令 >> 檔案

將命令的輸出結果追加到檔案中,不覆蓋

c命令 2> 檔案

將命令的錯誤輸出重定向到檔案

命令 < 檔案

檔案作為命令的標準輸入

命令 << 檔案

允許連續輸入資料,知道接收字串

1. 輸出重定向

在使用重定向命令時,把輸出內容重定向到檔案中,所有螢幕上不再顯示任何輸出結果。如果那個重定向檔案不存在的話,就會重新建立乙個檔案。如果那個檔案存在就會覆蓋這個檔案。為了避免發生覆蓋的情況,我們可以採用》來把資料追加到檔案的末尾。

2. 附加輸出重定向

正如上面所有的附加輸出重定向是將新輸出的追加到檔案的末尾。

3. 輸入重定向(

將輸入提供給命令來執行。

4. 附加輸入重定向(<

可以讓使用者自定義乙個字串,在收到此字串前會持續將資料輸入檔案。

5. 錯誤輸出重定向(2>)

將錯誤資訊直接輸入到檔案,

6. 標準輸出和錯誤輸出重定向

將標準輸出和錯誤輸出都輸入到檔案中,例:

管道命令(|)主要的作用是把前乙個命令的輸出做作為後乙個命令的輸入。例,將ps的命令輸出作為more的輸入:

linux程式執行有兩種方式:前台和後台。

前台執行:要等待命令結束,才能恢復自身的執行。

1.命令執行順序:命令用;隔開,如:

2. 條件執行:

&&:連線兩個命令,前乙個命令執行成功才執行後面的命令

||:連線兩個命令,前乙個命令執行失敗才執行後面的命令

?:表示任意乙個字元

*:表示任意長度的字串

:表示匹配中的字符集的任意乙個字元,在字符集前加上字首!表示指定集合以外的字元。

{}:將大括號中的字串以及前導字串和後繼字串作為匹配條件。

單引號(』』)::單引號中的特殊字元($,',",\)都成為普通字元

雙引號(」」):雙引號中的($,',",\)還是特殊字元

反引號(』』):反引號中的字元都解釋為命令(也就是~下面的·)

例,

執行指令碼通常有三種方法:

(1)通過chmod命令把檔案的許可權設為可讀和可執行,然後執行該檔案:

chmod u+x 檔名或者 chmod 755 檔名

./檔名

(2)直接用shell的啟動命令來執行指令碼:

bash 檔名(bash命令預設的是讀取乙個包含命令的檔案,所以不用為檔案賦予執行許可權)

sh 檔名

(3)使用bash的內部命令「source」或者是「.」來執行指令碼

source 檔名

. 檔名(. 和檔名要有空格)

例,

shell入門知識(命令二)

提示符 和 區分了使用者的不同許可權,表示普通使用者的許可權,而 代表的是根目錄 超級使用者root 的許可權 可以使用 echo shell檢視當前正在使用的shell型別,shell是乙個環境變數,它記錄了使用者所使用的shell,使用者可以通過直接輸入各種shell的二進位制檔名 因為這些二進...

shell複習筆記 入門知識

unix 簡史 unix 最初是由貝爾實驗室 bell telephone laborataries 的電腦科學研究中心開發的,第一版誕生於1970年 也就是在貝爾實驗室退出multics專案不久.在 unix 廣受歡迎的功能中,有許多便是來自multics 作業系統.它有下列優勢 也因此存在如下缺...

shell程式設計入門(一)

shell程式設計簡介 在linux系統中,雖然有各種各樣的圖形化介面工具,但是shell仍然是乙個非常靈活的工具。shell不僅僅是命令的收集,而且是一門非常棒的程式語言。我們可以通過使用shell使大量的任務自動化,shell特別擅長系統管理任務,尤其適合那些易用性 可維護性和便攜性比效率更重要...