我想要一个.bat文件
我的批处理文件包含以下行:
start powershell.exe -Command "&'D:\MyToolkit\ToolKit.ps1'"
但是,它会在运行脚本后关闭PowerShell。
有什么建议吗? 感谢
答案 0 :(得分:11)
start powershell -noexit -file "D:\MyToolkit\ToolKit.ps1"
另外,
将-Command
更改为-File
,因为这是您需要的
答案 1 :(得分:4)
不仅仅是这个问题的原始海报,而且对于那些可能在这里寻找答案的人来说,帮助系统非常有用,而且似乎经常被忽视。
使用命令/?或在PowerShell
中get-help
和get-help -full
命令都是有用的。
通过阅读您想要运行的命令的帮助,您可能已经回答了自己的问题,在这种情况下powershell
。
PowerShell[.exe] [-PSConsoleFile <file> | -Version <version>]
[-NoLogo] [-NoExit] [-Sta] [-Mta] [-NoProfile] [-NonInteractive]
[-InputFormat {Text | XML}] [-OutputFormat {Text | XML}]
[-WindowStyle <style>] [-EncodedCommand <Base64EncodedCommand>]
[-File <filePath> <args>] [-ExecutionPolicy <ExecutionPolicy>]
[-Command { - | <script-block> [-args <arg-array>]
| <string> [<CommandParameters>] } ]
PowerShell[.exe] -Help | -? | /?
-NoExit
Does not exit after running startup commands.
...
-File
Runs the specified script in the local scope ("dot-sourced"), so that the
functions and variables that the script creates are available in the
current session. Enter the script file path and any parameters.
File must be the last parameter in the command, because all characters
typed after the File parameter name are interpreted
as the script file path followed by the script parameters.
-NoExit - 运行启动命令后不退出。
-File - ...文件必须是命令中的最后一个参数...