国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

shell腳本4種執行方式

2019-10-26 18:59:28
字體:
來源:轉載
供稿:網友

Linux中shell腳本的執行通常有4種方式,分別為工作目錄執行,絕對路徑執行,sh執行,shell環境執行。

首先,看下我們的腳本內容

[tan@tan scripts]$ lltotal 4-rw-rw-r--. 1 tan tan 68 May 8 23:18 test.sh[tan@tan scripts]$ cat test.sh #!/usr/bin/bash/usr/bin/python <<-EOFprint "Hello Shell"    EOF

1、工作目錄執行

工作目錄執行,指的是執行腳本時,先進入到腳本所在的目錄(此時,稱為工作目錄),然后使用 ./腳本方式執行

[tan@tan scripts]$ ./test.sh-bash: ./test.sh: Permission denied[tan@tan scripts]$ chmod 764 test.sh[tan@tan scripts]$ ./test.shHello Shell

如圖,報了權限錯誤,上一篇博文有提到,這里需要賦權,使用chmod 764 test.sh 賦權后就可以正常執行了

./的意思是說在當前的工作目錄下執行hello.sh。如果不加上./,bash可能會響應找到不到hello.sh的錯誤信息。因為目前的工作目錄 (/data/shell)可能不在執行程序默認的搜索路徑之列,也就是說,不在環境變量PASH的內容之中。查看PATH的內容可用 echo $PASH 命令。現在的/data/shell就不在環境變量PASH中的,所以必須加上./才可執行。

2、絕對路徑執行

絕對路徑中執行,指的是直接從根目錄/到腳本目錄的絕對路徑

[tan@tan scripts]$ pwd/home/tan/scripts[tan@tan scripts]$ `pwd`/test.sh Hello Shell[tan@tan scripts]$ /home/tan/scripts/test.sh Hello Shell

這里 `pwd` 指的是該命令執行結果,等同于 /home/tan/scripts

3、sh執行

sh執行,指的是用腳本對應的sh或bash來接著腳本執行

[tan@tan scripts]$ sh test.sh Hello Shell[tan@tan scripts]$ bash test.sh Hello Shell

注意,若是以方法三的方式來執行,那么,可以不必事先設定shell的執行權限,甚至都不用寫shell文件中的第一行(指定bash路徑)。因為方法三 是將hello.sh作為參數傳給sh(bash)命令來執行的。這時不是hello.sh自己來執行,而是被人家調用執行,所以不要執行權限。那么不用 指定bash路徑自然也好理解了啊,呵呵……。

4、shell環境執行

shell環境執行,指的是在當前的shell環境中執行,可以使用 . 接腳本 或 source 接腳本

[tan@tan scripts]$ . test.sh Hello Shell[tan@tan scripts]$ source test.sh Hello Shell

總結

以上所述是小編給大家介紹的shell腳本4種執行方式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林站長站網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 普陀区| 潜山县| 永福县| 汶上县| 高邑县| 永宁县| 应城市| 咸丰县| 瑞丽市| 凉山| 宽甸| 务川| 南丰县| 台南县| 泸水县| 讷河市| 施甸县| 仪征市| 儋州市| 土默特右旗| 三明市| 平江县| 日喀则市| 孟州市| 当雄县| 吉木乃县| 进贤县| 大竹县| 郓城县| 濮阳市| 家居| 绿春县| 信宜市| 鹤峰县| 墨玉县| 南昌县| 长兴县| 慈溪市| 西藏| 通海县| 六安市|