shell 指令碼執行和基礎知識

來源:互聯網
上載者:User

標籤:style   blog   http   color   os   檔案   

當我們給予shell指令碼執行的許可權後,就可以測試程式了,假設shell指令檔為hello.sh
放在/root目錄下。下面介紹幾種在終端執行shell指令碼的方法:
1.切換到shell指令碼所在的目錄,執行:

[[email protected] home]# cd /root/
[[email protected] ~]# ./hello.sh
hello guys!
welcome to my Blog:linuxboy.org!



2.以絕對路徑的方式執行:

[[email protected] ~]# /root/hello.sh
hello guys!
welcome to my Blog:linuxboy.org!

3.直接用bash或sh執行:

[[email protected] ~]# bash hello.sh
hello guys!
welcome to my Blog:linuxboy.org!
[[email protected] ~]# sh hello.sh
hello guys!
welcome to my Blog:linuxboy.org!

注意:用以上三種方法執行shell指令碼,現行的shell會開啟一個子shell環境,去執行shell指令碼
也可以讓shell指令碼在現行的shell中執行:
4.現行的shell中執行

[[email protected] ~]# . /hello.sh
hello guys!
welcome to my Blog:linuxboy.org!
[[email protected] ~]# source hello.sh
hello guys!
welcome to my Blog:linuxboy.org!
[[email protected] ~]#

 

 

2. 類似方法一,只不過它是以指令檔名為參數的。

sh bash.sh

 

3. 將指令檔設定成執行檔案,直接在提示符下調用。

chmod u+x test.sh

./test.sh 

shell基礎知識:http://www.cnblogs.com/xuejie/archive/2013/01/31/2886552.html

 

指令碼filename:

#!/bin/sh echo *.jpg

chmod +x filename

./filename 來執行您的指令碼。

這將列印出"mail.jpg tux.jpg"的結果。

 

引號 (單引號和雙引號) 將防止這種萬用字元擴充:

#!/bin/shecho "*.jpg"echo ‘*.jpg‘

這將列印"*.jpg" 兩次。

單引號更嚴格一些。它可以防止任何變數擴充。雙引號可以防止萬用字元擴充但允許變數擴充。

#!/bin/shecho $SHELLecho "$SHELL"echo ‘$SHELL‘

運行結果為:

/bin/bash

/bin/bash

$SHELL

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.