① 在mac中怎麼運行.sh文件哦
1、在命令行輸入: sh install-mac-linux.sh
2、chmod +x install-mac-linux.sh
./install-mac-linux.sh
注意事項:
如果沒有成功報出問題: Permission denied。就是沒有許可權。
解決辦法:修改該文件aa.sh 的許可權,使用命令chmod 777 aa.sh 然後再執行上面第二步的操作 。
關於shell對shell腳本的調用可以採用3種方式
1、一種是將文件名作為shell命令的參數,其調用格式為:
$ Bash script_file
當要被執行的腳本文件沒有可執行許可權時,只能使用這種調用方式。
2、另一種調用的方法是先將腳本文件的訪問許可權更改為可執行,以便該文件可以作為執行文件調用。
具體的方法是:$chmod +x script_file
$PATH=$PATH:$PWD
$script_file
3、當執行一個腳本文件時,Shell就產生了一個Shell(即一個子進程)去執行文件中的命令。因此,腳本文件的變數值不能傳遞到當期Shell(即父進程)。為了使腳本文件中的變數值傳遞到當前Shell,必須在命令文件名前面加「.」。即:
$./script_file
「.」命令的功能是在當前shell中執行腳本文件中的命令,而不是產生一個子shell執行命令文件中的命令。
② 怎樣在linux的terminal下運行.sh文件
有兩種方式,一種方式是用bash sh文件名來執行,用bash這個命令來運行sh文件的好處是不需要sh文件具有可執行許可權,sh文件只要有可讀許可權就可以了;
第二種方式是賦予sh文件可執行許可權,然後直接運行它。賦予sh文件可執行許可權用chmod命令:
chmod a+x sh文件名
直接運行可以用絕對路徑如/root/test.sh,也可以用cd命令切換到sh文件的目錄,然後用類似./test.sh的方式運行(加./表示在當前目錄下運行)。
③ Linux中的sh命令的詳細解釋
linxu下的sh命令相當於是shell命令語言的解釋器。下面由我為大家整理了linux的sh命令的詳細解釋的相關知識,希望對大家有幫助!
一、Linux中的sh命令的詳細解釋
sh命令是shell命令語言解釋器,執行命令從標准輸入讀取或從一個文件中讀取。通過用戶輸入命令,和內核進行溝通!Bourne Again Shell (即bash)是自由軟體基金會(GNU)開發的一個Shell,它是Linux系統中一個默認的Shell。Bash不但與Bourne Shell兼容,還繼承了C Shell、Korn Shell等優點。
語法
bash [options] [file]
選項
-c string:命令從-c後的字元串讀取。
-i:實現腳本交互。
-n:進行shell腳本的語法檢查。
-x:實現shell腳本逐條語句的跟蹤。
二、Linux中的sh命令的具體例子
使用-x選項跟蹤腳本調試shell腳本,能列印出所執行的每一行命令以及當前狀態:
[root@AY1307311912260196fcZ satools]# sh -x check_ssh_login.sh
+ DEFINE=30
+ cat /var/log/secure
+ awk '/Failed/ {++ip[$(NF-3)]} END {for (i in ip) print i"="ip[i]}'
++ cat /root/satools/black.txt
+ for i in '`cat /root/satools/black.txt`'
++ echo 121.42.0.16=1427
++ awk -F= '{print $1}' + IP=121.42.0.16
++ echo 121.42.0.16=1427
++ awk -F= '{print $2}'
+ NUM=1427
+ '[' 1427 -gt 30 ']'
+ grep 121.42.0.16 /etc/hosts.deny
+ '[' 1 -gt 0 ']'
+ echo sshd:121.42.0.16
+ echo vsftpd:121.42.0.16
+ for i in '`cat /root/satools/black.txt`'
++ echo 121.42.0.72=276
++ awk -F= '{print $1}'
+ IP=121.42.0.72
++ awk -F= '{print $2}'
++ echo 121.42.0.72=276
+ NUM=276 + '[' 276 -gt 30 ']'
+ grep 121.42.0.72 /etc/hosts.deny
+ '[' 1 -gt 0 ']'
+ echo sshd:121.42.0.72
+ echo vsftpd:121.42.0.72
三、Linux中對.sh文件的操作命令
1、創建test.sh文件
touch test.sh
2、編輯sh文件
vi test.sh
3、保存退出
敲擊esc, 然後輸入 :wq ,回車退出
4、添加可執行許可權,當然默認就是可執行的。
chmod +x test.sh
5、運行文件
(1)./test.sh
(2)sh test.sh
6、刪除文件
rm test.sh
④ linux執行sh腳本的指令有哪些
bash shell 腳本的方法有多種,現在作個小結。假設我們編寫好的shell腳本的文件名為hello.sh,文件位置在/data/shell目錄中並已有執行許可權。
方法一:切換到shell腳本所在的目錄(此時,稱為工作目錄)執行shell腳本:
復制代碼代碼如下:
cd /data/shell
./hello.sh
./的意思是說在當前的工作目錄下執行hello.sh。如果不加上./,bash可能會響應找到不到hello.sh的錯誤信息。因為目前的工作目錄(/data/shell)可能不在執行程序默認的搜索路徑之列,也就是說,不在環境變數PASH的內容之中。查看PATH的內容可用 echo $PASH 命令。現在的/data/shell就不在環境變數PASH中的,所以必須加上./才可執行。
方法二:以絕對路徑的方式去執行bash shell腳本:
復制代碼代碼如下:
/data/shell/hello.sh
方法三:直接使用bash 或sh 來執行bash shell腳本:
復制代碼代碼如下:
cd /data/shell
bash hello.sh
或
復制代碼代碼如下:
cd /data/shell
sh hello.sh
注意,若是以方法三的方式來執行,那麼,可以不必事先設定shell的執行許可權,甚至都不用寫shell文件中的第一行(指定bash路徑)。因為方法三是將hello.sh作為參數傳給sh(bash)命令來執行的。這時不是hello.sh自己來執行,而是被人家調用執行,所以不要執行許可權。那麼不用指定bash路徑自然也好理解了啊,呵呵……。
方法四:在當前的shell環境中執行bash shell腳本:
復制代碼代碼如下:
cd /data/shell
. hello.sh
或
復制代碼代碼如下:
cd /data/shell
source hello.sh
前三種方法執行shell腳本時都是在當前shell(稱為父shell)開啟一個子shell環境,此shell腳本就在這個子shell環境中執行。shell腳本執行完後子shell環境隨即關閉,然後又回到父shell中。而方法四則是在當前shell中執行的。
⑤ 怎麼打開shell命令
編輯: vi **.sh
執行: ./**.sh
⑥ linux 命令中的sh是什麼意思
1、sh是linux中運行shell的命令,是shell的解釋器,shell腳本是linux中殼層與命令行界面,用戶可以在shell腳本輸入命令來執行各種各樣的任務。
要運行shell腳本,首選需要給shell腳本許可權,這里里以hello.sh文件為例,首先需要按下「crtl+shift+T」打開終端窗口:
⑦ Linux下面如何運行 SH文件
本文介紹Linux下面用命令如何運行.sh文件的方法,有兩種方法:
一、直接./加上文件名.sh,如運行hello.sh為./hello.sh【hello.sh必須有x許可權】
二、直接sh 加上文件名.sh,如運行hello.sh為sh hello.sh【hello.sh可以沒有x許可權】
工具/原料
windows、linux
xshell
方法一:當前目錄執行.sh文件
1
【步驟一】cd到.sh文件所在目錄
比如以hello.sh文件為例,如下圖
注意事項
用「./」加文件名.sh執行時,必須給.sh文件加x執行許可權
如果對您有幫助,幫忙點「有得」,有助於您是我們進步的最大動力!
如果您喜歡,請點「投票」,您的參與是我們進步的最大動力!
如果您有疑問,請提交疑問,與您的互動是我們進步的最大動力!
僅供參考