作为一个新的PowerShell用户,我打算调用一个路径不在PATH环境变量中的本地程序。在调用程序时,必须给出程序的相对或完整路径,例如, .\Users\xxx\Downloads\program_name\bin\prog
。但是,由于此路径很长并且有时可能会更改,因此作为Linux Shell脚本程序员,我想在路径中使用变量,例如.\$prog_home\bin\prog
。
因此我的问题是如何初始化这个变量,以便它可以像我之前假设的那样使用?我试图以这种方式初始化变量 -
$prog_home="User\xxx\Downloads\program_name"
不幸的是,这在Linux Shell中完全不起作用
答案 0 :(得分:2)
请考虑使用Join-Path
cmdlet组合路径。还有一个内置的USERPROFILE
环境变量,您可以使用它。这就是你如何做到的:
$prog_home = Join-Path $env:USERPROFILE 'program_name'
$prog = Join-Path $prog_home '\bin\prog.exe'
& $prog #execute it