《Bash 腳本教程》發布了

2021-03-02 阮一峰的網絡日誌

過去三個月,我一直在寫《Bash 腳本教程》[1],現在終於寫完了。

Bash 是 Linux 和 Mac 的默認 Shell(命令行環境),系統管理和伺服器開發都需要它。雖然不難,但是語法很怪異,比如計算字符串的長度[2]要寫成${#varname},根本記不住,需要查手冊。網上找不到簡明扼要的中文教程,我很早就想整理一個,方便自己日後使用。

我一共寫了20節,Bash 腳本編程的主要語法,都包括在內了,日常使用應該足夠。點擊左下角的閱讀原文[3],現在就可以自由閱讀和訪問。也歡迎初學者使用這個教程,學習 Bash。

這個教程是開源的,你可以克隆它的代碼倉庫[4],放在本地,也可以提交 issue 和 pull request,反饋感想,幫助我提高教程質量。

(完)

References

[1] 《Bash 腳本教程》: https://wangdoc.com/bash/
[2] 字符串的長度: https://wangdoc.com/bash/string.html#%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E9%95%BF%E5%BA%A6
[3] 閱讀原文: https://wangdoc.com/bash/
[4] 代碼倉庫: https://github.com/wangdoc/bash-tutorial

相關焦點

  • 終極Bash腳本指南
    而 Bash 腳本是我們最容易接觸到和上手的腳本語言。這篇博客匯總一些常用的 Bash 語法,方便日後查閱學習。Hello World不管寫啥,上來先輸出個hello world。/hello.shhello world解釋器我們看到這個hello.sh 腳本,第一行有個 #!/bin/bash 。這個是用來指定該腳本在 UNIX/Linux 下執行時用到的解釋器。
  • 寫出健壯的 Bash 腳本 - OSCHINA - 中文開源技術交流社區
    在寫腳本時將這類問題最小化是十分必要的。本文中我將介紹一些讓bash腳本變得健壯的技術。使用set -u你因為沒有對變量初始化而使腳本崩潰過多少次?對於我來說,很多次。好在bash提供了set -u,當你使用未初始化的變量時,讓bash自動退出。你也可以使用可讀性更強一點的set -o nounset。
  • shell腳本極簡教程
    上面提到過,Shell是一種腳本語言,那麼,就必須有解釋器來執行這些腳本。Unix/Linux上常見的Shell腳本解釋器有bash、sh、csh、ksh等,習慣上把它們稱作一種Shell。我們常說有多少種Shell,其實說的是Shell腳本解釋器。
  • Linux Bash腳本流程控制之「if條件判定」
    Bash腳本可以由許多命令組成。每一個命令執行後,都會傳回一個結束狀態值。如果執行成功,返回0;如果執行失敗,則返回非0值。執行失敗,分為多種情況,例如:某個命令執行失敗,產生嚴重的信號n,則其結束狀態返回值為128+n。如果執行命令時,該命令不存在,則返回值為127。命令存在但沒有執行權限,則返回126。Bash的內置變量$?
  • MLSBS v0.21RC,Linux 一鍵運維腳本(新增腳本加密)
    「MLSBS」是「My linux's bash script」的縮寫linux運維技術人員日常需要寫一堆腳本來簡化工作量。「MLSBS」的目的就是把我日常在linux下的工作通過腳本整合到一個項目中,需要的時候幾個點擊就可以完成任務了。
  • ...Bash | Linux 中國|linux|程式語言|bash|shell|隨機數_網易訂閱
    除了提供豐富的命令行用戶界面外,Bash 還以腳本的形式支持完整的程式語言。  如果你對 Bash 不熟悉,我推薦你看這些介紹:  ? 。  ?  ?  ?  ?  你可以通過編寫一個 Bash 版本的「猜數字」遊戲來探索它。這是我的實現:    #!
  • Bash首頁、文檔和下載 - Linux SHELL - OSCHINA - 中文開源技術...
    bash 是一個為GNU項目編寫的Unix shell。Bourne shell是一個早期的重要shell,由Stephen Bourne在1978年前後編寫,並同Version 7 Unix一起發布。bash則在1987年由Brian Fox創造。在1990年,Chet Ramey成為了主要的維護者。
  • Linux Bash編程超詳細語法總結
    bash編程,即shell腳本。那麼什麼是shell腳本呢?shell是一個命令語言解釋器,而shell腳本則是Linux命令的集合,按照預設的順序依次解釋執行,來完成特定的、較複雜的系統管理任務,類似於Windows中的批處理文件。本文帶來的是bash編程的基礎語法講解。
  • v2ray繞過校園網認證的教程
    v2ray繞過校園網認證的教程,此教程更適合新手,一鍵式搭建,直接就可以用,話不多說,教程開始v2ray一鍵搭建腳本:
  • 【shell】shell 腳本編程基礎
    初識1.1 第一個 shell 腳本1.2 運行 shell 腳本的兩種方法2. 變量2.1 變量2.2 字符串2.3 數組2.4 注釋3. 傳遞參數4.初識1.1 第一個 shell 腳本test.sh :#!/bin/bashecho "Hello,World"#! 告訴系統其後路徑所指定的程序即是解釋此腳本文件的 Shell 程序。
  • Linux中Shell腳本基礎筆記
    shell腳本都是以"#!"作為開頭。這是腳本開始的標記,它是告訴linux系統執行該腳本文件需要使用相應的解釋器,緊挨著的/bin/bash指定了解釋器的具體路徑。shell主要用#作為注釋標記。後面可以加腳本的注釋,建議寫shell腳本要根據情況多寫注釋,便於以後腳本的維護。shell腳本的運行方式:1、可以在shell腳本第一行加上"#!/bin/bash"的話。可以按照以下方式執行:bash test.sh #要保證目錄中存在該腳本文件。2、給腳本加上可執行的權限,然後使用".
  • C4D教程-Python腳本編寫基礎案例教程 Python Scripting,,從此腳本編寫不再難
    教程:這個視頻主要學習Python,包括一些非常有用的參考資料。同時,作者還有一些很棒的建議創建類似於Photoshop的動作,你可以創建一個腳本並運行只需一個點擊,就可以完成多步驟過程。腳本可以經常為你做的任何事,腳本可以節省大量的時間。不管怎樣,希望你喜歡。他有很多學習的腳本和其他資源的連結。作者Vimeo主頁(書生推薦,你值得收藏):https://vimeo.com/noahwitchell/videoshttp://pan.baidu.com/s/1i5bJ6dR號外號外,微信公眾號已開通留言功能,歡迎大家踴躍灌水!
  • 軟體特攻隊|shell腳本小技巧,教你寫出健壯可靠的腳本
    作為一個程式設計師,寫shell腳本是常有的事。然而什麼樣的shell腳本?什麼態度去寫shell腳本?是我們需要思考的事。如果抱著能跑就行的態度,也許很容易,但是從腳本的健壯性和可靠性上出發,那麼就不是一件容易的事,以下是幾點小技巧。1、語法檢查這是最基本的一點,寫shell腳本時,最有效的就是使用相應的工具進行語法自動補全,自動檢查。
  • AE腳本:人像磨皮祛痘美白潤膚美顏腳本 + 使用教程
    人像磨皮祛痘美白潤膚美顏AE腳本 Skin Retouch v1.0.002 + 使用教程 SkinRetouch是一款人像磨皮祛痘美白潤膚美顏腳本。
  • PentestPackage-滲透測試常用腳本打包
    Plesk-creds-gatherer.sh - 舊版本 PLesk解密BashScriptTemplate.sh - bash程序模板PythonScriptTemplate.py - python程序模板ipexplode.pl - 將CIDR格式的IP輸出成ip列表形式
  • 精心匯總的 24 道 shell 腳本面試題
    /bin/bashx=10y=20if [ $x -gt $y ]thenecho 「x is greater than y」elseecho 「y is greater than x」fiQ:8 shell腳本中break命令的作用 ?
  • 為什麼Shell腳本執行不成功?原來是這樣
    其實,Shell腳本的書寫和執行都有很多注意事項的,因為我們平時使用的少,所以沒有注意到,今天小編就帶大家來一一熟悉下吧!1、「#!」使用有講究#!這一組符號如果出現在腳本的第一行,代表的是指定該shell腳本用哪種類型的shell來解釋和執行,即指定解釋器。如果#!這個符號出現的位置不是第一行,那麼代表這一行是注釋行,腳本不執行。如下圖所示,#!
  • AE腳本:錨點中心點移動對齊腳本+使用教程
    錨點中心點移動對齊AE腳本Move Anchor Point 4.0.2 + 使用教程腳本可以快速改變移動對齊一個或者一組圖層的錨點中心點且不影響任何其他屬性即使層關鍵幀腳本經過重新設計,添加更多預設,可以更精確地控制移動錨點的位置。
  • linux系統shell腳本基本及變量
    shell是啥1、腳本語言,可以用來編寫腳本。shell script shell腳本(劇本),面向過程的語言。腳本-->一條條命令的羅列。haproxy2、翻譯,將用戶輸入的命令翻譯給計算機默認:/bin/bash支持命令別名alias# alias xx='ls --color=auto'定義# unalias xx取消別名通配符{}# touch file{1..100}
  • Linux shell腳本編程入門系列一:認識shell腳本
    1、什麼是shell腳本將多個shell命令按語法組合在一起,並保存在文本文件中即得到我們所說的shell腳本(shell script)。shell腳本可以方便地與系統交互,完成系統管理以及批處理任務。shell處於作業系統與應用之間,起到橋梁的作用。