Linux命令行與Shell腳本編程學習筆記15

2021-01-07 臨江墨雲

1. 如果要兩個命令一起運行,可在同一提示行輸入它們,用分號分隔開。

2. 在創建shell腳本文件時,必須在文件的第一行指定要使用的shell。

3. 在通常的shell腳本的行裡,井號(#)用作注釋行。shell腳本中注釋行是不被shell執行的。然而,shell腳本文件的第一行是個特例,井號後接嘆號告訴shell用哪個shell來運行腳本。

4. 有些Linux發行版將$HOME/bin目錄添加進了PATH環境變量。它在每個用戶的HOME目錄下提供了提供了一個存放腳本文件的地方,shell可以在那裡查找要執行的命令。

5. echo命令能顯示一個簡單的文本字符串。

6. 如果想在同一行顯示一個文本字符串作為命令輸出,可以用echo 語句的-n參數。

7. 反斜線允許shell腳本將美元符解釋成為實際的美元符,而不是變量。

8. 你可能還見過通過${variable}形式引用的變量。變量名兩側額外的花括號通常用來幫助識別美元符後的變量名。

9. 用戶變量可以是任何不超過20個字母、數字或下劃線的文本字符串。用戶變量區分大小寫。

10.值通過等號賦給用戶變量。變量、等號和值之間不能出現空格。

11.shell腳本會自動決定變量值的數據類型。

12.反引號允許將shell命令的輸出賦給變量。

13.bash shell採用大於號(>)來完成重定向功能。

你可能想要將命令的輸出追加到已有文件上,你可以用雙大於號(>>)來追加數據。

14.輸入重定向符號是小於號(<)。

記住它的簡易辦法是在命令行上,命令總是在右側,而重定向符號「指向」數據流動的方向。小於號說明數據正在從輸入文件流向命令。

15.內聯輸入重定向符號是雙小於號(<<)。除了這個符號,還必須指定一個文本標記來劃分要輸入數據的開始和結尾。你可以用任何字符串的值來作為文本標記,但在數據的開始和結尾必須一致。

在命令行上使用內聯輸入重定向時,shell會用PS2環境變量中定義的次提示符來提示輸入數據。

16.取代將命令的輸出重定向到文件,你可以重定向輸出到另一個命令。這個過程稱為管道連接。

管道的符號由兩個豎線構成,一個在另一個上面。在美式鍵盤上,它通常和反斜線(\)位於同一個鍵。

17.可以在一條命令中使用任意多條管道。

管道最流行的用法之一是將命令產生的長輸出結果通過管道傳送給more命令。

18.sort命令將包名按字母順序排列。

19.expr命令允許在命令行上處理數學表達式。

20.在bash中,在將一個數學運算結果賦給某個變量時,可以用美元符合方括號($[operation])將數學表達式圈起來。

21.bash shell數學運算符只支持整數運算。

22.bash計算器允許在命令行輸入浮點表達式、解釋表達式、計算並返回結果的一種程式語言。

bash計算器能夠識別:

(1) 數字(整數和浮點數);

(2) 變量(簡單變量和數組);

(3) 注釋(以井號開始的行或C語言中的/* */對);

(4) 表達式;

(5) 編程語句(例如if-then語句);

(6) 函數。

浮點運算是由一個內建的稱為scale的變量控制的。必須經這個值設置為結果裡你想要的小數後的位數,否則得不到你想要的結果。

23.在腳本中使用bc基本格式是這樣的:

variable=`echo 「options; expression」 | bc`

第一部分options允許你來設置變量。如果需要設置不止一個變量,可以用分號來分開它們。experssion參數定義了通過bc執行的數學表達式。

24.shell中運行的每個命令都使用退出狀態碼來告訴shell它完成了處理。退出狀態碼是一個0到255之間的整數值,在命令結束運行時由命令傳給shell。

一個成功結束的命令的退出狀態碼是0。如果一個命令結束時有錯誤,退出狀態碼中就會有一個正整值。

Linux退出狀態碼:

25.exit命令允許你在腳本結束時指定一個退出狀態碼。

相關焦點

  • Linux命令行與Shell腳本編程學習筆記20
    trap命令允許你來指定shell腳本要觀察哪些linux信號並從shell中攔截。如果腳本收到了trap命令中列出的信號,它會阻止它被shell處理,而在本地處理它。2. trap命令的格式是: trap commands signals3. 當&符放到命令後時,它會將命令和bash shell分離開來,並將它作為系統上的獨立後臺進程運行。
  • 資料|《Linux 命令行與 shell 腳本編程大全》
    今日資料推薦《 Linux 命令行與 shell 腳本編程大全》這是一本關於 Linux 命令行與 shell 腳本編程的全方位教程,主要包括四大部分:Linux 命令行,shell 腳本編程基礎,高級 shell 腳本編程,如何創建實用的 shell 腳本。
  • Linux命令行與Shell腳本編程學習筆記26
    gawk程式語言支持兩種不同類型的變量:(1)內建變量 (2)自定義變量2. 欄位是由欄位分隔符來劃分的。默認情況下,欄位分隔符是一個空白字符,也就是空格符或者制表符。3. gawk數據欄位和數據行變量變量FS和OFS定義了gawk如何處理數據流中的數據欄位。變量OFS用在print命令的輸出上。
  • Linux命令行與Shell腳本編程學習21
    使用return命令的這種方法從函數中返回值時,要注意一下兩點:(1) 函數一結束就取返回值;(2) 退出狀態碼必須在0-255之間。5. 可以將函數的輸出保存到shell變量中。這種方法可以返回浮點值和字符串值。6. 函數可以使用標準的參數環境變量來代表命令行上傳給函數的參數。7.
  • Linux命令行與Shell腳本編程學習筆記16
    有一類命令會基於變量值或其他命令的結果等條件使腳本跳過或循環執行命令,這樣的命令通常稱為結構化命令。2. 結構化命令中,最基本的類型就是if-then語句。if-then語句格式如下:if commandthencommandsfibash shell的if語句會運行if行定義的那個命令。如果該命令的退出狀態碼是0.位於then部分的命令就會被執行。
  • Linux中Shell腳本基礎筆記
    shell腳本都是以"#!"作為開頭。這是腳本開始的標記,它是告訴linux系統執行該腳本文件需要使用相應的解釋器,緊挨著的/bin/bash指定了解釋器的具體路徑。shell主要用#作為注釋標記。後面可以加腳本的注釋,建議寫shell腳本要根據情況多寫注釋,便於以後腳本的維護。shell腳本的運行方式:1、可以在shell腳本第一行加上"#!/bin/bash"的話。可以按照以下方式執行:bash test.sh #要保證目錄中存在該腳本文件。2、給腳本加上可執行的權限,然後使用".
  • 玩轉Linux - shell 編程基礎(一)
    shell腳本(shell script),是一種為shell編寫的腳本程序。業界所說的shell通常都是指shell腳本,但讀者朋友要知道,shell和shell script是兩個不同的概念。由於習慣的原因,簡潔起見,本文出現的「shell編程」都是指shell腳本編程,不是指開發shell自身(如Windows Explorer擴展開發)。
  • 【Linux】shell高級編程視頻教程(含經典案例)
    shell的最強大的重要特性是它自身就是一個解釋型的程序設計語言,shell 程序設計語言支持在高級語言裡所能見到的絕大多數程序控制結構,比如循環,函數,變量和數組。shell 程式語言很易學,並且一旦掌握後它將成為你的得力工具。任何在提示符下能鍵入的命令都能放到一個可執行的shell程序裡,這意味著用shell語言能簡單地重複執行某一任務。
  • 玩轉 Linux - shell 編程基礎
    shell腳本(shell script),是一種為shell編寫的腳本程序。業界所說的shell通常都是指shell腳本,但讀者朋友要知道,shell和shell script是兩個不同的概念。由於習慣的原因,簡潔起見,本文出現的「shell編程」都是指shell腳本編程,不是指開發shell自身(如Windows Explorer擴展開發)。
  • Linux——Shell腳本的應用1(基礎)
    Shell腳本的應用(基礎)簡介:隨著linux系統在企業中的應用越來越多,伺服器的自動化管理也變得越來越重要。在linux伺服器的自動化維護工作中,除了計劃任務的設置以外,shell腳本的應用也是非常重要的一部分。
  • Linux shell腳本編程入門系列一:認識shell腳本
    1、什麼是shell腳本將多個shell命令按語法組合在一起,並保存在文本文件中即得到我們所說的shell腳本(shell script)。shell腳本可以方便地與系統交互,完成系統管理以及批處理任務。shell處於作業系統與應用之間,起到橋梁的作用。
  • Linux作業系統之Shell程序設計
    Shell是種命令解釋程序,也可以看作是一種命令語言的解釋器。 用戶在與Shell交互時所輸入的命令行必須符合Shell命令的語法和語義規範,才能夠被Shell理解並執行。Shell所使用的這種命令語言稱為Shell 語言。Shell語言不僅僅是一種交互式語言, 它還是一種可編程的程序設計語言。
  • 《Linux基礎》第5講 shell編程 (一)
    Shell腳本和程式語言很相似,也有變量和流程控制語句,但Shell腳本是解釋執行的,不需要編譯,Shell程序從腳本中一行一行讀取並執行這些命令,相當於一個用戶把腳本中的命令一行一行敲到Shell提示符下執行。Shell初學者請注意,在平常應用中,建議不要用 root 帳號運行 Shell 。
  • Linux常用Shell腳本,值得學習及收藏
    在運維中,尤其是linux運維,都知道腳本的重要性,腳本會讓我們的 運維事半功倍,所以學會寫腳本是我們每個linux運維必須學會的一門功課,這裡收藏
  • 3個學生的linux視頻學習筆記
    視頻介紹了學習linux需要用到的學習資料,包括一本書:Linux命令行與shell腳本編程大全,以及以前的學員寫的很詳細的學習經驗。學習linux這種系統的知識很有效的是記筆記,如果要很系統的學下來可以讀書輔助視頻,而對於常用到的命令,最好的方法就是背下來。
  • shell腳本極簡教程
    不懂shell的程式設計師不是好程式設計師,學習shell是為了自動化,使用自動化可以非常有效的提高工作效率。
  • ...Bash | Linux 中國|linux|程式語言|bash|shell|隨機數_網易訂閱
    本文字數:2676,閱讀時長大約: 3分鐘  https://linux.cn/article-12962-1.html作者:Jim Hall譯者:Xingyu.Wang  學習一門新的程式語言是很有趣的。每當我嘗試學習一門新的語言時,我都會專注於定義變量、編寫語句和評估表達式。
  • shell不是Linux系統的殼嗎?咋還能腳本編程了?
    小豆丁:老張啊,你不是剛給我講完Linux系統的shell是什麼意思嘛(詳見《貝殼?龜殼?手機殼?究竟啥是Linux系統的殼?》),今天我有看到個詞,叫做「shell腳本編程」,這又是啥意思啊?shell不是Linux系統的殼嗎,怎麼還能編程了?老張:哦,這個問題啊,也好理解。老張:在解釋這個問題之前,我先問問你,shell大致的工作過程還記得嗎?
  • 什麼是Shell腳本?為什麼要學習Shell?
    Shell腳本語言是實現Linux/UNIX系統管理及自動化運維所必備的重要工具, Linux/UNIX系統的底層及基礎應用軟體的核心大都涉及Shell腳本的內容。每一個合格 的Linux系統管理員或運維工程師,都需要能夠熟練地編寫Shell腳本語言,並能夠閱 讀系統及各類軟體附帶的Shell腳本內容。
  • Linux 平臺下 Python 腳本編程入門(一)
    大多數人會認為 Bash (或者其他的 shell 語言)用起來很方便,但一些強大的語言(比如 Python)會給你帶來一些其它的好處。在 Linux 中學習 Python 腳本編程首先,我們會使用 Python 的命令行工具,還會接觸到 Python 的面向對象特性(這篇文章的後半部分會談到它)。