2012-05-30 40 views
5

Tôi đang chạy Python 3.2 trên Win XP. Tôi chạy một kịch bản python thông qua một tập tin thực thi thông qua này:Gửi đối số từ tệp Batch tới tập lệnh Python

C:\Python32\python.exe test.py %1

%1 là một lập luận mà tôi vượt qua để làm một số xử lý trong kịch bản python.

Tôi có 2 biến trong tệp lô mà tôi cũng muốn gửi làm đối số cho tập lệnh python.

set $1=hey_hi_hello

set $2=hey_hi

Tôi muốn để có thể làm điều gì đó như thế này nếu có thể:

C:\Python32\python.exe test.py %1 $1 $2

Và sau đó lấy những argiments trong kịch bản python qua sys.argv[2]sys.argv[3]

Sẽ đánh giá cao bất kỳ trợ giúp nào về điều này. Cảm ơn bạn.

Trả lời

6

your_script.bat:

set VAR_1=this 
set VAR_2=that 

python your_script.py %1 %VAR_1% %VAR_2% 
+0

này không được công việc. Cảm ơn bạn! – dawnoflife

+1

@Tim Henigan: Tôi nghĩ bạn có nghĩa là 'python test.py% 1% VAR_1%% VAR_2%' –

+0

Lưu ý rằng điều này áp dụng cho bất kỳ loại biến môi trường nào, cục bộ hoặc toàn cục. Vì vậy, bạn có thể làm một cái gì đó như 'python% USERPROFILE% \ scripts \ test.py% 1% VAR_1%% VAR_2%'. – JAB

Các vấn đề liên quan