Re: [問題] 關於path的問題
※ 引述《tumc (HIHIHI)》之銘言:
: 剛剛發現一個奇的問題,小弟明明己經用
: chdir()變換到一個新的目錄,
: 但利用$ENV{'PWD'}所查到的,卻還是程式所在目錄
: 有人可以回答嗎,謝謝
下面是我個人的理解
有錯的話請指正...
PWD 這個環境變數是由 shell (如 bash) 在維護的
perl 只是在執行時將所有的環境變數載入 %ENV
所以使用 chdir 改變工作目錄時並不會影響到 $ENV{PWD}
不過當你執行 system('echo $PWD') 會印出正確的工作目錄
system() 會 fork 一個子行程並執行 shell 的指令
此時環境變數 PWD 在新執行的 shell 即為現在所在的的工作目錄
如果要知道現在所在的工作目錄,可使用 getcwd:
use Cwd;
my $dir = getcwd;
(請見 http://perldoc.perl.org/Cwd.html)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.230.108
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章