我试图system("cd /home/user")在perl中实现一个bash命令,但是我得到一个错误说
Can't exec "cd": No such file or directory at temp.pl
Run Code Online (Sandbox Code Playgroud)
有没有办法将当前工作目录更改为指定的工作目录,并且在perl脚本退出后仍然存在更改.
否.进程无法更改其父进程的当前工作目录.Shell实现了像cd"builtins" 这样的命令,这意味着它们是shell本身的一个函数,而不是一个运行的独立进程.
您可以使用perl更改当前目录chdir($dir),并且该更改将由子进程继承 - 但不会传递给父进程.