我想从Windows命令提示符启动.ps1。我的Powershell脚本有一个路径参数。这是启动.ps1的命令行
powershell Set-ExecutionPolicy Unrestricted -scope process ; C:\\MyPowerShell.ps1 -Path \"C:\\Test for my script\test1.txt"
在MyPowerShell.ps1中,如果我写了主机路径,我得到:C:\ Test。当第一个空格出现时,它会切断我的字符串。
我怎样才能走完全路?
THX。
答案 0 :(得分:0)
选项2: 不要逃避路径,而是从传入的内容中删除引号。
$path2file = $path2file.replace('"',"").replace("'","")
这将允许任何人在路径上放置引号(一个公认的练习规范),并且您的应用程序剥离引号并将整个路径放在一个变量中。如果未引用路径,则此行无效。
失败的地方是实际文件路径中是否包含引号(单引号或双引号)。
答案 1 :(得分:0)
我放':-Path '\"C:\\Test for my script\test1.txt"'
并且它有效。
谢谢:)