gpt4 book ai didi

powershell - (cd $dir && someCommand) 的地道 powershell 翻译

转载 作者:行者123 更新时间:2023-12-02 23:42:43 24 4
gpt4 key购买 nike

我有一个 python 脚本,它输出我想用 ConvertFrom-Json 捕获的 JSON。不幸的是,这个脚本要求我在运行它之前 cd 到一个不同的目录。执行此操作的惯用 powershell 方法是什么?

这个有效:

$q = powershell.exe -Command "cd some\other\dir; python JsonMaker.py | ConvertFrom-Json"

这样做:

$cwd=Get-Location
cd some\other\dir
$q=python JsonMaker.py | ConvertFrom-Json
cd "$cwd"

但更改当前工作目录对我来说似乎很冒险 - 如果 python 脚本输出格式错误的 JSON,我会留在 some\other\dir 中吗?

在 unix shell 脚本世界中,我显然会做类似的事情

(cd some/other/dir && python JsonMaker.py) | commandThatUsesJson

或使用 $(cd some/other/dir && python JsonMaker.py) 读取输入。但是,在 unix 中,子 shell 很便宜。在 powershell 中,我发现启动子 shell 有明显的延迟。

Powershell 的长期用户采用什么方法来处理此类问题?

最佳答案

我可能会使用 pushd/popd:

pushd some\other\dir
$q=python JsonMaker.py | ConvertFrom-Json
popd

关于powershell - (cd $dir && someCommand) 的地道 powershell 翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36966469/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com