有時(在客戶的PC中)我需要一個python腳本來在Windows shell中執行,如.CMD或.BAT,但不需要.py或與PYTHON/PYTHONW相關的.pyw擴展名。沒有.py/.pyw關聯的Windows shell中的「Bootstrap」python腳本
我想出了一對 'quick'n髒' 的解決方案:
1)
"""
e:\devtool\python\python.exe %0 :: or %PYTHONPATH%\python.exe
goto eof:
"""
# Python test
print "[works, but shows shell errors]"
2)
@echo off
for /f "skip=4 delims=xxx" %%l in (%0) do @echo %%l | e:\devtools\python\python.exe
goto :eof
::----------
# Python test
print "[works better, but is somewhat messy]"
你知道一個更好的解決方案? (即:更簡潔或優雅)
更新:
基於@van答案,我發現(不設置ERRORLEVEL)我用更簡潔的方式
@e:\devtools\python\python.exe -x "%~f0" %* & exit /b
### Python begins....
import sys
for arg in sys.argv:
print arg
raw_input("It works!!!\n")
###
我沒有看到你的第二個解決方案有什麼問題(除了'||'應該是'|')。這不是超級優雅,但它完成了工作。 – 2010-03-18 19:03:58
錯字,更正,thx。 – PabloG 2010-03-18 19:13:16