第乙個shell指令碼

2021-10-03 10:49:16 字數 1352 閱讀 4546

新建乙個檔案 test.sh(vi/vim test.sh),擴充套件名為 sh(sh代表shell),此處副檔名可不加,因為linux系統並非通過字尾識別檔案,而是通過檔案的頭部資訊來來獲取檔案型別或者編碼格式。只是為了自己明白。

#!/bin/bash

echo

"hello world !"

#!/bin/bash分析

第一行的#!是乙個特殊的表示符,其後跟著執行此指令碼程式的直譯器路徑。除了第一行的#以外,其餘均為注釋。

/bin/bash是直譯器的路徑,並非只有bash,還有c shell、k shell…

echo "hello world !"分析

echo命令用於向視窗輸出文字。與 欲輸出的文字內容 間要加空格

"hello world !"欲輸出的文字內容

[root@kalidesktop]

#./test.sh

bash: .

/test.sh: permission denied #沒有許可權

[root@kalidesktop]

#ls -l

-rw-r--r-- 1 root root 33 mar 2 11:08 test.sh #可以看到無執行許可權

此時還不可以執行,這是因為新建立的檔案是沒有執行許可權的(注意是檔案而不是資料夾,新建立的資料夾是有執行許可權沒有寫許可權的)

使用命令chmod u+x test.shchmod 744 test.sh檔案的建立者增加執行許可權

[root@kalidesktop]

#./test.sh

hello world !

#執行結果

注意,執行指令碼時候或者全路徑,或者./file.sh,而不是 test.sh,執行其它二進位制的程式也一樣,直接寫 test.sh,linux 系統會去 path 裡尋找有沒有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 path 裡,你的當前目錄通常不在 path 裡,所以寫成 test.sh 是會找不到命令的,要用 ./test.sh 告訴系統說,就在當前目錄找。

第乙個Shell指令碼

開啟文字編輯器,新建乙個檔案,擴充套件名為sh sh代表shell 副檔名並不影響指令碼執行,見名知意就好,如果你用php寫shell 指令碼,副檔名就用php好了。輸入一些 bin bash echo hello world 是乙個約定的標記,它告訴系統這個指令碼需要什麼直譯器來執行,即使用哪一種...

第乙個shell指令碼

首先宣告,我的linux系統是centeros 64bit的 開啟終端,cd mnt hgfs share 進入以下目錄 mkdir shellfolder 建立資料夾shellfolder touch runstusys.sh 建立乙個shell程式 vi runstusys.sh 進行編輯,並輸...

第乙個shell指令碼

hostname term hello shell histsize ssh client world cvs rsh path 通過shell讀取文字檔案,並到系統變數中查詢是否存在 shell命令如下 bin sh filename env var.txt num cat filename wc...