0
異なるスクリプトを呼び出すPowerShell GUIを実行しています。バックグラウンドジョブ実行スクリプト(ハードコードなし)
function start-jobhere([scriptblock]$block) {
Start-Job -ArgumentList (Get-Location),$block {
Set-Location $args[0];
Invoke-Expression $args[1]
}
}
$handler_button1_Click = {
$job1 = start-jobhere {& K:\Uploader\Import\DataUploader.ps1} -Name "Uploader"
}
は、私が使用してそれを避けるために試してみました:私は現在のようなハードコードされたパスを使用してい
$LocalPath = ($MyInvocation.MyCommand.Path).ToLower().Replace("datauploader.ps1", "")
$handler_button1_Click = {
$job1 = start-jobhere {& $LocalPath\DataUploader.ps1} -Name "Uploader"
}
しかし、動作するようには思えません。同じフォルダにいくつかのスクリプトがあり、いくつかは異なるハードドライブにあります。ハードコーディングされたパスを避ける方法はありますか?