溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

shell腳本基礎(chǔ)知識梳理<一>

發(fā)布時間:2020-05-31 20:59:45 來源:網(wǎng)絡(luò) 閱讀:266 作者:wx5cb5dcd871bbc 欄目:系統(tǒng)運維

一、shell 腳本格式
#!/bin/bash
第一行是指定那個程序來編譯執(zhí)行腳本
注釋是一“#”開頭,

二、腳本執(zhí)行 source、sh、bash、./執(zhí)行腳本的區(qū)別
1、“. ”點命令,就是個點符號(從Bourne Shell而來)是source的另一名稱
2、source 命令(從 C Shell 而來)執(zhí)行bash shell的內(nèi)置命令
3、bash /bin/bash命令功能要比sh強大
4、sh /bin/sh命令
5、export可新增,修改或刪除環(huán)境變量,供后續(xù)執(zhí)行的程序使用。同時,重要的一點是,export的效力僅及于該次登陸操作。注銷或者重新開一個窗口,export命令給出的環(huán)境變量都不存在了。
export PATH=/bin/bash:$PATH
6、(點 source bash sh ./執(zhí)行的文件名)他們之間的區(qū)別
6.1:點和source 執(zhí)行方式是等價;即兩種執(zhí)行方式都是在當前shell進程中執(zhí)行此腳本,而不是重新啟動一個shell 而在子shell進程中執(zhí)行此腳本。
6.2:bash sh (可以無執(zhí)行權(quán)限)二者的執(zhí)行文件不同
./ (必須有執(zhí)行權(quán)限)三者執(zhí)行方式是等價的;此三種執(zhí)行腳本的方式都是重新啟動一個子shell,在子shell中執(zhí)行此腳本。
6.3: 驗證結(jié)果:

[root@localhost ~]#name=dangxu //定義一般變量
[root@localhost ~]# echo ${name}
dangxu
[root@localhost ~]# cat test.sh //驗證腳本,實例化標題中的./*.sh
#!/bin/sh
echo ${name}
[root@localhost ~]# ls -l test.sh //驗證腳本可執(zhí)行
-rwxr-xr-x 1 root root 23 Feb 6 11:09 test.sh
[root@localhost ~]# ./test.sh //以下三個命令證明了結(jié)論一
[root@localhost ~]# sh ./test.sh
[root@localhost ~]# bash ./test.sh
[root@localhost ~]# . ./test.sh //以下兩個命令證明了結(jié)論二
dangxu
[root@localhost ~]# source ./test.sh
dangxu
[root@localhost ~]#

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI