新聞中心
linux shell腳本執(zhí)行命令詳解
在Linux下,如果你需要執(zhí)行shell腳本,那么應(yīng)該使用那個(gè)命令呢?下面由我為大家整理了linux shell腳本執(zhí)行命令的相關(guān)知識(shí),希望對(duì)大家有幫助!
創(chuàng)新互聯(lián)2013年至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元永城做網(wǎng)站,已為上家服務(wù),為永城各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220
linux shell腳本執(zhí)行
linux shell腳本執(zhí)行方法一: 切換到shell腳本所在的目錄(此時(shí),稱為工作目錄)執(zhí)行shell腳本:
cd /data/shell
./hello.sh
./的意思是說(shuō)在當(dāng)前的工作目錄下執(zhí)行hello.sh。如果不加上./,bash可能會(huì)響應(yīng)找到不到hello.sh的錯(cuò)誤信息。因?yàn)槟壳暗墓ぷ髂夸?/data/shell)可能不在執(zhí)行程序默認(rèn)的搜索路徑之列,也就是說(shuō),不在環(huán)境變量PASH的內(nèi)容之中。查看PATH的內(nèi)容可用 echo $PASH 命令?,F(xiàn)在的/data/shell就不在環(huán)境變量PASH中的,所以必須加上./才可執(zhí)行。
linux shell腳本執(zhí)行方法二: 以絕對(duì)路徑的方式去執(zhí)行bash shell腳本:
/data/shell/hello.sh
linux shell腳本執(zhí)行方法三: 直接使用bash 或sh 來(lái)執(zhí)行bash shell腳本:
cd /data/shell
bash hello.sh
或
cd /data/shell
sh hello.sh
注意,若是以方法三的方式來(lái)執(zhí)行,那么,可以不必事先設(shè)定shell的執(zhí)行權(quán)限,甚至都不用寫shell文件中的第一行(指定bash路徑)。因?yàn)榉椒ㄈ菍ello.sh作為參數(shù)傳給sh(bash)命令來(lái)執(zhí)行的。這時(shí)不是hello.sh自己來(lái)執(zhí)行,而是被人家調(diào)用執(zhí)行,所以不要執(zhí)行權(quán)限。那么不用指定bash路徑自然也好理解了啊。
linux shell腳本執(zhí)行方法四: 在當(dāng)前的shell環(huán)境中執(zhí)行bash shell腳本:
cd /data/shell
. hello.sh
或
cd /data/shell
source hello.sh
前三種方法執(zhí)行shell腳本時(shí)都是在當(dāng)前shell(稱為父shell)開(kāi)啟一個(gè)子shell環(huán)境,此shell腳本就在這個(gè)子shell環(huán)境中執(zhí)行。shell腳本執(zhí)行完后子shell環(huán)境隨即關(guān)閉,然后又回到父shell中。而方法四則是在當(dāng)前shell中執(zhí)行的。
Linux中的sh命令的詳細(xì)解釋
linxu下的sh命令相當(dāng)于是shell命令語(yǔ)言的解釋器。下面由我為大家整理了linux的sh命令的詳細(xì)解釋的相關(guān)知識(shí),希望對(duì)大家有幫助!
一、Linux中的sh命令的詳細(xì)解釋
sh命令是shell命令語(yǔ)言解釋器,執(zhí)行命令從標(biāo)準(zhǔn)輸入讀取或從一個(gè)文件中讀取。通過(guò)用戶輸入命令,和內(nèi)核進(jìn)行溝通!Bourne Again Shell (即bash)是自由軟件基金會(huì)(GNU)開(kāi)發(fā)的一個(gè)Shell,它是Linux系統(tǒng)中一個(gè)默認(rèn)的Shell。Bash不但與Bourne Shell兼容,還繼承了C Shell、Korn Shell等優(yōu)點(diǎn)。
語(yǔ)法
bash [options] [file]
選項(xiàng)
-c string:命令從-c后的字符串讀取。
-i:實(shí)現(xiàn)腳本交互。
-n:進(jìn)行shell腳本的語(yǔ)法檢查。
-x:實(shí)現(xiàn)shell腳本逐條語(yǔ)句的跟蹤。
二、Linux中的sh命令的具體例子
使用-x選項(xiàng)跟蹤腳本調(diào)試shell腳本,能打印出所執(zhí)行的每一行命令以及當(dāng)前狀態(tài):
[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中對(duì).sh文件的操作命令
1、創(chuàng)建test.sh文件
touch test.sh
2、編輯sh文件
vi test.sh
3、保存退出
敲擊esc, 然后輸入 :wq ,回車退出
4、添加可執(zhí)行權(quán)限,當(dāng)然默認(rèn)就是可執(zhí)行的。
chmod +x test.sh
5、運(yùn)行文件
(1)./test.sh
(2)sh test.sh
6、刪除文件
rm test.sh
linux怎么運(yùn)行.sh
linux怎么運(yùn)行.sh需要3個(gè)步驟來(lái)完成,下面是具體介紹:
1、找到文件所在目錄,cd到.sh文件所在目錄。
2、給.sh文件添加執(zhí)行權(quán)限,用chmodu添加權(quán)限。
3、用sh執(zhí)行.sh文件。
今天的分享就是這些,希望能幫助大家。
本文章基于thinkpadE15品牌、centos7系統(tǒng)撰寫的。
分享文章:linux執(zhí)行sh的命令 linux執(zhí)行shell命令
本文地址:http://fisionsoft.com.cn/article/doscpcs.html