1樓:匿名使用者
bash shell 指令碼的方法有多種,現在作個小結。假設我們編寫好的shell指令碼的檔名為,檔案位置在/data/shell目錄中並已有執行許可權。
方法一:切換到shell指令碼所在的目錄(此時,稱為工作目錄)執行shell指令碼:
複製****如下:
cd /data/shell
./的意思是說在當前的工作目錄下執行。
如果不加上。/,bash可能會響應找到不到的錯誤資訊。
因為目前的工作目錄(/data/shell)可能不在執行程式預設的搜尋路徑之列,也就是說,不在環境變數pash的內容之中。檢視path的內容可用 echo $pash 命令。現在的/data/shell就不在環境變數pash中的,所以必須加上。
/才可執行。
方法二:以絕對路徑的方式去執行bash shell指令碼:
複製****如下:
/data/shell/
方法三:直接使用bash 或sh 來執行bash shell指令碼:
複製****如下:
cd /data/shell
bash 或複製****如下:
cd /data/shell
sh 注意,若是以方法三的方式來執行,那麼,可以不必事先設定shell的執行許可權,甚至都不用寫shell檔案中的第一行(指定bash路徑)。因為方法三是將作為引數傳給sh(bash)命令來執行的。
這時不是自己來執行,而是被人家呼叫執行,所以不要執行許可權。那麼不用指定bash路徑自然也好理解了啊,呵呵……。
方法四:在當前的shell環境中執行bash shell指令碼:
複製****如下:
cd /data/shell
或複製****如下:
cd /data/shell
source
前三種方法執行shell指令碼時都是在當前shell(稱為父shell)開啟乙個子shell環境,此shell指令碼就在這個子shell環境中執行。shell指令碼執行完後子shell環境隨即關閉,然後又回到父shell中。而方法四則是在當前shell中執行的。
linux 命令中的sh是什麼意思??
2樓:飛喵某
1、sh是linux中執行shell的命令,是shell的直譯器,shell指令碼是linux中殼層與命令列介面,使用者可以在shell指令碼輸入命令來執行各種各樣的任務。
要執行shell指令碼,首選需要給shell指令碼許可權,這裡裡以檔案為例,首先需要按下「crtl+shift+t」開啟終端視窗:
2、接著先給「檔案新增x許可權chmod u+x
3、輸入「sh 就開始執行shell指令碼了,此時在終端中就輸出了「hello!」的字樣。
以上就是用sh執行shell指令碼的簡單演示,當然shell是乙個功能相當強大的程式語言,有著易編寫,易除錯,靈活性較強的特點:
linux下如何寫個shell指令碼,每天執行這麼幾句命令:
3樓:匿名使用者
1、登入抄centos7系統,開啟終端,輸入命令env shell列印出baishell程序的環境變數。
。2、本du地zhi變數只dao存在當前shell程序。新建乙個本地變數myvar=myvalue注意等號兩邊不能有空格。
3、檢視本地變數set檢視指定本地變數set | grep myvar。
4、匯出本地變數為環境變數export myvar。
5、刪除本地變數或環境變數unset myvar即可。
4樓:我只是喜歡吃魚
每天自動執bai行肯定是du要用乙個crontab的。
指令碼可以zhi這樣寫:
指令碼上面即可實現了。
如果要版每天權自動執行,那麼需要新增一條crontab
如果你的p程序是apache程序,那麼直接start就行,如果不是那麼要restart
0 1 * usr/local/encode/apachectl restart
上面提到的只能在/usr/local/encode下執行是說明你的服務直接執行的指令碼。
linux中.sh指令碼檔案中命令的執行順序
5樓:切俊健
每條命令後如果不加&的話就是依次一行一行的順序執行,只有前面一行執行完成後再執行下一行,如果希望多個命令在乙個shell內執行可在一行寫入多條命令,用&&符號間隔。
linux 命令中的sh是什麼意思??
linux下如何給指令碼可以執行許可權指令 10
6樓:感性的林克
在當前路徑下輸入。
chmod 777 指令碼名。
給指令碼授權,然後就可以執行指令碼。
./指令碼名。
777 是最高許可權,有讀、寫、執行許可權;和屬組使用者和其他使用者的讀、寫、執行許可權。
其他許可權分別是。
-rw---600) -只有讀寫許可權。
-rw-r--r-- 644) -只有有讀寫許可權;而屬組使用者和其他使用者只有讀許可權。
-rwx---700) -只有有讀、寫、執行許可權。
-rwxr-xr-x (755) -有讀、寫、執行許可權;而屬組使用者和其他使用者只有讀、執行許可權。
-rwx--x--x (711) -有讀、寫、執行許可權;而屬組使用者和其他使用者只有執行許可權。
linux執行命令 ./shell.sh shell.sh為script,相對路徑執行為啥前面是./ 有什麼含義?
7樓:中神通王蟲羊
./是當前路徑。
如果你直接輸入他會在環境變數中找這個檔案。
因為環境變數中沒有這個檔案,所以會報找不到該檔案當你的執行檔案不在環境變數中時,你需要敲入執行檔案的絕對路徑,或者相對路徑。/就屬於相對路徑。
8樓:匿名使用者
1、./表示當前目錄,告訴linux,在當前路徑,別到處瞎找了。
2、echo $path,如果你把放到path環境變數包含的路徑裡,直接執行就行了。
3、如果你把path環境變數增加"."比如export path=$path:./在shell.
sh路徑裡,也可以直接執行不加"."但是為了防止執行被惡意放置在檔案系統中的木馬程式,一般都會將path環境變數中的".
"去掉。
linux一次執行多個shell指令碼
9樓:匿名使用者
find . iname -exec \
先在當前目錄中及子目錄中找到 , 然後執行。
10樓:匿名使用者
你可以在要執行的指令碼後邊加&符號,這樣指令碼就在後台執行了,你可以繼續執行其他指令碼。
11樓:匿名使用者
開啟4個shell 分別進到4個目錄 挨個執行。。。
12樓:匿名使用者
把這些指令碼路徑都寫在乙個shell指令碼唄。
13樓:百元新
inux 下shell指令碼執行多個命令的方法1.每個命令之間用;隔開。
說明:各命令的執行給果,不會影響其它命令的執行。換句話說,各個命令都會執行,但不保證每個命令都執行成功。
2.每個命令之間用&&隔開。
說明:若前面的命令執行成功,才會去執行後面的命令。這樣可以保證所有的命令執行完畢後,執行過程都是成功的。
3.每個命令之間用||隔開。
14樓:月光小南
可以使用&&串聯命令。
linux 中怎樣執行指令碼
15樓:匿名使用者
首先指令碼需要有執行許可權。
chmod u+x
執行指令碼有三種方法:
特點:開啟bash子程序來執行,也就是開啟額外的程序來進行,不影響原程序的變數、配置等。
2. bash
特點:和。/相同。
3. source 或者 . 特點:在原bash程序中執行指令碼。
第三種方法主要用於在指令碼中切換使用者su、切換目錄cd等命令。
source 和 . 命令是相同的。
你可以搜尋 source
補充,如何檢視指令碼執行是否開啟了bash子程序vim
寫入#!/bin/bash
#echo $$命令會輸出bash程序idecho $$
儲存並賦予可執行許可權chmod u+x 在你的shell中輸入,echo $$螢幕輸出4176./ 螢幕輸出3600
bash 螢幕輸出3984source 螢幕輸出4176 和 你直接在shell中輸出的一樣,說明是在同乙個bash程序。
16樓:小公尺飛貓
chmod +x 給指令碼加執行權。
sh 使用shell去執行指令碼。
17樓:匿名使用者
程式中找到 shell ,跟 windows 中 cmd 差不多。也叫 終端。
18樓:匿名使用者
指令碼沒有執行許可權。
sh /path/to/指令碼。
指令碼有執行許可權。
/path/to/指令碼。
linux下怎麼執行bash指令碼
1 登入抄centos7系統,開啟終端,輸入命令env shell列印出baishell程序的環境變數 2 本du地zhi變數只dao存在當前shell程序。新建乙個本地變數myvar myvalue注意等號兩邊不能有空格。3 檢視本地變數set檢視指定本地變數set grep myvar。4 匯出...
linux 如何關閉正在執行的php指令碼
1.如果不是後台執行,直接ctrl c 就終止執行2.如果是後台執行。首先執行 sudo ps ef grep php再次執行 sudo kill 9 pid 或者 sudo kill 15 pid pid 為ps命令查處的程序號。ps ef grep 會過濾出某個程序號。kill 9 程序號。li...
Linux能否實現使用者登入執行指令碼
可以。使用者登入時,bash 首先執行全域性登入指令碼 由 root 建立 etc profile,然後在使用者起始目錄下依次尋找 bash profile bash login profile 三個檔案,執行最先找到的乙個。可以用這種辦法像 ware 一樣為不同的使用者定製執行環境。此外,使用者退...