我试图通过TFS中的powershellscript运行sqlplus . 我有一个deployment.xml文件,其中包含sql脚本的部署顺序 . 我的PS脚本读取deployment.xml文件,然后执行sqlplus命令 . deployment.xml有3个文件
-
新SQL FILE.sql
-
sample.sql
-
dfg_ehl.sql
名称中有空格的第一个文件没有被读取并且正在抛出
错误:无法打开文件,因为文件不存在 .
我已经尝试重命名,替换和复制文件,但PS脚本仍然失败了
错误“找不到路径C:... \ NEW SQL FILE.sql因为它不存在” .
我也使用双引号但不起作用 . 这是我的代码:
param($username,$password,$schema,$sqlpath)
$xml=[xml] Get-Content deployment.xml
$Query=$xml.deployment.script
Set-Location $sqlpath
foreach($q in $Query)
{
sqlplus $username/$password@$schema "@$q"
}
Deployment.xml
<deployment>
<script>NEW SQL File.sql</script>
<script>sample.sql</script>
</deployment>
请帮忙 . 这个脚本不起作用并抛出
“找不到路径”C:.. \ NEW SQL File.sql“因为它不存在 .
1 回答
用双引号括起你的文件名 . 像"NEW SQL File.sql" https://blogs.technet.microsoft.com/heyscriptingguy/2012/08/07/powertip-run-a-powershell-script-with-space-in-the-path/