Shell腳本運行

初識Shell

shell是一個命令行解釋器,它爲用戶提供了一個向Linux內核發送請求以便運行程序的界面系統級程序,用戶可以用Shell來啓動、掛起、停止甚至是編寫一些程序。
在這裏插入圖片描述

Shell腳本

Shell腳本(shell script)是一種shell編寫的腳本程序。

Shell環境

Linux的Shell種類很多,常見的有:

  • Bourne Shell(/usr/bin/sh或/bin/sh)
  • C Shell(/usr/bin/csh)
  • K Shell(/usr/bin/ksh)
  • Bourne Again Shell(/bin/bash)

Bourne Again Shell由於易用和免費,Bash 在日常工作中被廣泛使用。同時,Bash 也是大多數Linux 系統默認的 Shell。

在一般情況下,人們並不區分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh,它同樣也可以改爲 #!/bin/bash。(兩者兼容)

#! 告訴系統其後路徑所指定的程序即是解釋此腳本文件的 Shell 程序。

Hello World

新建一個文件test.sh,擴展名爲sh(代表shell,但是並不影響執行,只是爲了見名知意),用vim編輯器編寫如下代碼:

#!/bin/bash # #!是一個約定的標記,它告訴系統這個腳本需要什麼解釋器來執行,即使用哪一種 Shell。
echo "Hello World !" #echo 命令用於向窗口輸出文本。

運行Shell腳本

1、作爲可執行文件

將test.sh保存,並cd到響應的目錄:

[[email protected] tmp]$ chmod 755 test.sh #使腳本具有執行權限
[[email protected] tmp]$ ./test.sh #執行腳本
 hello wrold!

注意:一定要寫 ./test.sh,而不是 test.sh,運行其它二進制的程序也一樣,直接寫test.sh,linux 系統會去 PATH 裏尋找有沒有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 裏,你的當前目錄通常不在 PATH 裏,所以寫成 test.sh是會找不到命令的,要用 ./test.sh告訴系統說,就在當前目錄找。

2、作爲解釋器參數

[[email protected] tmp]$ /bin/sh test.sh #執行腳本
 hello wrold!

這種方式運行的腳本,不需要在第一行指定解釋器信息。

發佈了31 篇原創文章 · 獲贊 11 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章