将批处理脚本转换为PowerShell脚本遇参数设置问题
批处理转PowerShell脚本解决方案
转换后的PowerShell脚本
# 设置环境变量(仅当前PowerShell进程有效) $env:AUTOSPLIT_INPUT_FOLDER = "C:\prova\" $env:AUTOSPLIT_CONFIG_FILE = "C:\prova\pgm\prova.apr" $env:AUTOSPLIT_BAT_ENABLE = "ON" $env:AUTOSPLIT_MODE = "Split" # 启动Adobe Acrobat并传递参数 & "C:\Program Files (x86)\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe" /n /h
关键说明
- 环境变量设置:PowerShell中用
$env:变量名设置当前进程的环境变量,和批处理SET作用一致,仅对当前PowerShell会话及启动的子进程生效。 - 启动程序的正确方式:
- 当程序路径包含空格时,必须用
&(调用操作符)配合引号包裹路径,否则PowerShell会将路径识别为多个命令。 - 也可以用
Start-Processcmdlet实现,写法如下:Start-Process -FilePath "C:\Program Files (x86)\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe" -ArgumentList "/n", "/h"
- 当程序路径包含空格时,必须用
- 参数传递:
/n和/h作为程序启动参数,直接跟在exe路径后即可,和批处理中的传递方式一致。
内容的提问来源于stack exchange,提问作者Michele83
相关产品推荐
相关产品推荐

