Windowsスケジューラを使用して実行するコマンドをpowershellスクリプトでスケジュールしようとしています。このコマンドはユーザ固有の環境変数に依存しており、スケジュールされたタスクはこれらの変数にアクセスすることができないので、PowerShellスクリプト自体の内部で変数を設定しようと決めました。powershellスクリプトでユーザー環境変数を設定する正しい方法は何ですか
、スクリプトでこれを複製するために、私が使用してみました:
$env:DCRCLIFILE = "C:\Users\pzsr7z\Desktop\DCRCLIFILE.txt"
が、何らかの理由でプログラムが正しく動作しませんこのように設定すると、「通常の」ユーザー環境変数を使用してプログラムを実行すると完全に正常に動作しますが、
で環境変数を設定するとき、私は違っやるべきものがあります:PowerShellを使用して
プログラムの実行が開始しましたパワーシェルスクリプト?なぜこれが動作していないのか分かりません。私は環境変数が実際に作成されることを確認しました。だから、powershellコマンドが失敗しているようなものではありません。
「スケジュールされたタスクはこれらのアクセス権を持っていないため、あなたにその印象を与えたものは何ですか? –
@Bill_Stewart "Get-ChildItem Env:"を実行するスケジュールされたタスクを設定した場合、ユーザー固有の環境変数が省略されている間、すべてのシステム環境変数が表示されます。少なくともそれは私がこれを実行しているWindows 2012サーバーでどのように動作するのですか – lacrosse1991
変数はどのアカウントで定義されており、どのアカウントの下でタスクを実行していますか? –