我正在使用一个命令行程序,其文档说明:
“您可以在位于另一个目录中的输入上运行 XXX,但其输出将始终放在当前工作目录中”。不过,我希望将输出写入另一个目录。
我可以(用cd, 或pushd+ popd)
或者
...但两者都显得笨拙,并且如果脚本由不了解此要求的人编辑,则容易出错。我能想到的唯一其他解决方案是用分号连接命令。还有其他方法吗?
顺便说一下,这是在 bash 中。
gle*_*man 10
使用括号,因此 cd 出现在子外壳中:
(cd other_dir && xxx)
Run Code Online (Sandbox Code Playgroud)
结束时,您当前的工作目录不会改变。
cd 可能会失败,因此用于&&有条件地执行程序。