linux命令sh
① 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
1
【步驟一】cd到.sh文件所在目錄
比如以hello.sh文件為例,如下圖
用「./」加文件名.sh執行時,必須給.sh文件加x執行許可權
如果對您有幫助,幫忙點「有得」,有助於您是我們進步的最大動力!
如果您喜歡,請點「投票」,您的參與是我們進步的最大動力!
如果您有疑問,請提交疑問,與您的互動是我們進步的最大動力!
僅供參考
方法一:當前目錄執行.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中執行的。
④ linux 命令中的sh是什麼意思
1、sh是linux中運行shell的命令,是shell的解釋器,shell腳本是linux中殼層與命令行界面,用戶可以在shell腳本輸入命令來執行各種各樣的任務。
要運行shell腳本,首選需要給shell腳本許可權,這里里以hello.sh文件為例,首先需要按下「crtl+shift+T」打開終端窗口:
⑤ linux里sh命令是做什麼的詳解!
sh或是執行腳本,或是切換到sh這個bash里,默認的shell是bash,你可以試試tcsh啊,csh啊,ksh,zsh什麼的,看看別的shell是什麼樣子的。當然,linux中sh是鏈接到bash上的,所以sh與bash在功能上是沒有區別的。
還有就是在執行腳本的時候是用sh
+
腳本名的方式來執行,其實,大部分的時候,簡單腳本只要許可權設置正確,可以直接執行,不需要sh命令的
⑥ linux 命令中的sh是什麼意思
sh或是執行腳本,或是切換到sh這個bash里,默認的shell是bash,你可以試試tcsh啊,csh啊,ksh,zsh什麼的,看看別的shell是什麼樣子的。當然,linux中sh是鏈接到bash上的,所以sh與bash在功能上是沒有區別的。
關於這個linux系統的學習,我一直看劉遄老師的書籍《linux就該這么學》
⑦ linux ./a.sh 命令 與sh a.sh的區別是什麼
linux ./a.sh 命令 與sh a.sh的區別為:可執行屬性不同、執行方式不同、兼容性不同。
一、可執行屬性不同
1、./a.sh 命令:./a.sh 命令的文件必須具有可執行屬性。
2、sh a.sh命令:sh a.sh命令的文件不必具有可執行屬性。
二、執行方式不同
1、./a.sh 命令:./a.sh 命令使用腳本中第一行所指定的命令來解釋和執行文件。
2、sh a.sh命令:sh a.sh命令使用shell工具的SH腳本直接解釋和執行文件。
三、兼容性不同
1、./a.sh 命令:./a.sh 命令的兼容性比sh a.sh命令更好,不受限於shell工具。
2、sh a.sh命令:sh a.sh命令的兼容性比./a.sh 命令更差,受限於shell工具。
⑧ Linux下面如何運行SH文件
1、打開電腦,在電腦的左下角選擇終端,這里是kde桌面,需要右鍵點擊才能出現終端選項;