から

2009-09-02 1 views
1

は、カスタムのenv設定でプログラムを実行するにはワンライナーは、我々はLinux上でこれを行うから

$ MYVAR=23 ./foo.py 

Windows上で、私が知っている唯一の方法は次のとおりです。

C:\> set MYVAR=23 
C:\> .\foo.py 
C:\> REM unset MYVAR here (but how?) 

これは1ライナーとして行うことはできませんか?

+0

(SETLOCAL ENABLEDELAYEDEXPANSIONは、これらのケースで助けることができる)が問題となっているおそらく、この質問はより適しだろうServerFaultの人々のために? – blparker

答えて

1
set foo=bar&.\foo.py&set foo= 

バッチファイルを1行ずつ解析されていることに留意すべきであるので、このような1つのライナーが

+0

'&'は、次のコマンドがコマンド成功(失敗ではない)で実行されることを意味しますか? –

+1

&は常に次のコマンドを実行し、&&は成功のみであり、||失敗のために – Anders

1
set MYVAR= 

設定を解除します。

SETLOCALENDLOCALを使用して変数の範囲を制限することもできます。詳細については、コマンドラインからhelp SETLOCALhelp GETLOCALを実行してください。

Cmd referenceもチェックしてください。

関連する問題