我有一个perl脚本,它$newdir根据作为参数传递的一些输入创建一个目录,我希望脚本通过执行以下操作来完成它的执行:
cd $newdir
Run Code Online (Sandbox Code Playgroud)
因此,bash Linux 64bit(此处program2)中的下一个命令是从$newdir工作目录执行的.
例如:
perl $HOME/import_script.pl -i someparameter && $HOME/program2 .
Run Code Online (Sandbox Code Playgroud)
你不能.
cd您在perl脚本中运行的任何(或类似)将仅影响perl脚本(或从perl脚本生成的子shell).
它不能直接影响父shell.
你唯一能做的就是输出目录,然后输出cd到那个或类似的目录.(例如,cd "$(perl "$HOME"/import_script.pl -i someparameter)" && "$HOME/program2" .但是意识到这意味着你不能从perl脚本输出任何其他标准输出,否则会混淆cd.)
或者让perl运行第二个命令,等等.