是的,我知道,有几十个帖子的标题几乎相同;但是,我似乎无法正常工作。
我只是想从 Powershell 脚本中调用具有参数/开关的可执行文件。对于具有不同命令和参数列表的脚本,我需要运行大约 50 个不同的可执行文件。我什至无法弄清楚如何运行大多数米老鼠示例。如果我能找到运行以下内容的解决方案,我可能可以推断解决方案以满足我的需求。
- rmdir "C:\SomePath" /S /Q
- 目录 /s /b
我尝试了很多很多张贴的解决方案,但没有一个对我有用,而且几乎所有的解决方案都会产生相同的错误。对于上面的例子,我通常会得到以下之一:
- “找不到接受参数‘/S’的位置参数。” 或者
- “找不到路径 'D:\s',因为它不存在。”
我已经尝试了使用 & 号调用运算符、拆分参数、转义引号、Invoke-Process、Start-Process、Invoke-Expression 等各种规定的解决方案,但没有一个甚至会在没有错误的情况下运行。
具有讽刺意味的是,我能够使用开关运行一些命令而不会出现任何错误。例如,在没有转义/包装/封装的情况下运行以下工作没有任何错误——只包括脚本中的行。你会注意到它有开关,而这些开关有斜线。
- taskkill /f /im 我的任务
此外,以下两项工作(注意斜线与非斜线):
- ping -n 3 -4 -l 64 yahoo.com
- ping /n 3 /4 /l 64 yahoo.com
因此,似乎斜线不是问题。我只是不知道为什么上面的例子不起作用。
请,我不是在为上述示例寻找等效的 Powershell。即,我不是在寻找 dir 的 Get-ChildItem 解决方案或 rmdir 的 Remove-Item 解决方案。我实际上是在研究如何在具有参数的 Powershell 中调用可执行文件;并且,具体来说,使用这些例子。也很高兴知道为什么 dir/rmdir 示例不起作用而 taskkill 和 ping 起作用。
预先感谢您的回复。任何帮助将不胜感激。