は、カスタムのenv設定でプログラムを実行するにはワンライナーは、我々はLinux上でこれを行うから
$ MYVAR=23 ./foo.py
Windows上で、私が知っている唯一の方法は次のとおりです。
C:\> set MYVAR=23
C:\> .\foo.py
C:\> REM unset MYVAR here (but how?)
これは1ライナーとして行うことはできませんか?
は、カスタムのenv設定でプログラムを実行するにはワンライナーは、我々はLinux上でこれを行うから
$ MYVAR=23 ./foo.py
Windows上で、私が知っている唯一の方法は次のとおりです。
C:\> set MYVAR=23
C:\> .\foo.py
C:\> REM unset MYVAR here (but how?)
これは1ライナーとして行うことはできませんか?
set foo=bar&.\foo.py&set foo=
バッチファイルを1行ずつ解析されていることに留意すべきであるので、このような1つのライナーが
'&'は、次のコマンドがコマンド成功(失敗ではない)で実行されることを意味しますか? –
&は常に次のコマンドを実行し、&&は成功のみであり、||失敗のために – Anders
set MYVAR=
設定を解除します。
SETLOCAL
とENDLOCAL
を使用して変数の範囲を制限することもできます。詳細については、コマンドラインからhelp SETLOCAL
とhelp GETLOCAL
を実行してください。
Cmd referenceもチェックしてください。
(SETLOCAL ENABLEDELAYEDEXPANSIONは、これらのケースで助けることができる)が問題となっているおそらく、この質問はより適しだろうServerFaultの人々のために? – blparker