我写了一个powershell脚本。代码只有与我的PC相关的路径。 现在相同的代码不能由他的机器上的另一个人执行,因为路径是diff。因此,请让我知道我的代码可以在所有机器上工作的方式。
答案 0 :(得分:2)
这取决于路径。如果它们是\Program Files
中的程序,也许您可以在路径规范中使用环境变量$ env:ProgramFiles。您还可以参数化脚本以采用如下路径:
param($path)
# rest of script ...
请注意,param()
语句必须是脚本中的第一个非注释行。
答案 1 :(得分:1)
您还可以使用可用于运行脚本的特殊$MyInvocation变量。除了其他功能外,它还可以访问脚本执行的路径。
例如我使用的脚本有这一行:
$InputCSV = (split-path $myinvocation.mycommand.path) + "\filename.csv"
这意味着无论脚本从何处运行,都会知道从同一个地方获取CSV文件。