且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

通过powershell命令传递字典项不起作用

更新时间:2023-11-12 08:33:04

我发现双反斜杠是不是问题。对于我的代码 subprocess.Popen([rpowershell.exe,r$ sh = New-Object -COM WScript.Shell+\\\
+$ sh.CreateShortcut(%s ).TargetPath%my_data [key]],stdout = subprocess.PIPE).communicate()[0]

I found that the double backslash was not the problem. for my code subprocess.Popen([r"powershell.exe", r"$sh = New-Object -COM WScript.Shell" + "\n" + "$sh.CreateShortcut(%s).TargetPath" % my_data[key]], stdout=subprocess.PIPE).communicate()[0].

\\\
在每一行的末尾。我使用 my_dict [key] .replace(\\\
,)
来摆脱它。还需要路径路径 \%s\修正。我不知道powershell能够处理双反斜杠吗?但是它做了

The dictionary had \n at the end of each line. I used my_dict[key].replace("\n","") to get rid of it. also the path needed "path" \"%s\" fixed that. I don't know how powershell was able to handle the double backslash???? but it did