"Given path's format is not supported" 在 Powershell 中使用相对路径时

"Given path's format is not supported" when using relative paths in Powershell

我有一个 Powershell 脚本,我已经成功使用了一段时间,但直到最近它才不再喜欢设置的相对路径。知道为什么或如何发生这种情况吗?

我尝试调用的脚本位置是 C:\Scripts_Upload.sql.

$scripts = "C:\Scripts"
cd $scripts
Invoke-Sqlcmd -ServerInstance 'xxx-xx-xxxx' -Database 'TestDB' -InputFIle ._Upload.sql

为了安全起见,我已经审查了服务器名称。这条线以前有效,我也尝试过不同的方法,也只是使用 01_Upload.sql 并用引号括起来,但现在 returns 这个错误:

Invoke-Sqlcmd : The given path's format is not supported.

如果我包含完整路径,代码就可以正常工作。为什么我的相对路径不起作用?如果这对事情有影响,我最近从 Windows 7 更新到 Windows 10。

根据文档,需要文件的完整路径。

-InputFile Specifies a file to be used as the query input to this cmdlet. The file can contain Transact-SQL statements, XQuery statements, and sqlcmd commands and scripting variables. Specify the full path to the file. Spaces are not allowed in the file path or file name.

https://docs.microsoft.com/en-us/powershell/module/sqlserver/invoke-sqlcmd?view=sqlserver-ps