shell腳本執行的方法

例如以下shell腳本cd.sh    它的目的是把當前終端切換到/mnt/hgfs/OSP/client目錄下。shell

 

#!/bin/shspa

cd /mnt/hgfs/OSP/client變量

pwdcli

 

執行方法一:   ./cd.sh 終端

結果:目錄沒有切換,可是會在終端上打印一行:/mnt/hgfs/OSP/client方法

解釋:這樣執行的話終端會產生一個子shell,子shell去執行個人腳本,在子shell中已經切換了目錄了,可是子shell一旦執行完,立刻退出,子shell中的變量和操做所有都收回。回到終端根本就看不到這個過程的變化。總結

 

執行方法二:source cd.sh腳本

結果:目錄被切換到/mnt/hgfs/OSP/client,且在終端上打印一行:/mnt/hgfs/OSP/client生成

解釋:這時候就是直接在當前終端的shell執行腳本了,沒有生成子shell,執行的結果就是輸出命令,而且切換了目錄

 

總結:shell 腳本有兩種執行的方法,一種是新產生一個shell,而後執行相應的shell腳本;一種是在當前shell下執行,再也不啓用其餘shell。

相關文章
相關標籤/搜索