Scripting

使用腳本 (ksh) 更改目前目錄

  • November 19, 2013

我正在從 echo $PWD —> /x 啟動我的腳本。我希望我的腳本更改我的目前目錄。所以我的腳本包含 +- 這個:

cd /y
exit 0

但是,當我的腳本結束時,我仍然在 echo $PWD —> /x 中。我想加入/y。為什麼它不起作用?

我只是通過執行以下操作來啟動我的腳本:

$$ myScriptName $$

那是因為你的 shell 啟動了另一個 shell 來執行你的腳本。第二個 shell 改變了它的工作目錄,然後退出到第一個 shell,它從未改變過它的目錄。

為了讓你目前的 shell 執行腳本,這樣呼叫它:

. scriptname

(注意點)。當然,你必須把它拿出來exit 0

你也可以寫一個shell函式。見ksh(1)

引用自:https://unix.stackexchange.com/questions/101755