在windows任意目錄執行python腳本


在Linux下想要在任意目錄執行一個python腳本,很簡單:

  • 把python腳本添加可執行權限
  • 把python腳本放到PATH所包含的任意一個目錄下,不和已有文件重名即可;如果重名則放到最前一個
  • python文件名可以不以".py"結尾,只要以shabang (#! /usr/bin/env python)開頭即可

然而在Windows下這么做不行。研究了一下Miniconda自帶的pip命令。實際上:

  • 調用pip,調用的是pip.exe
  • pip.exe是二進制文件,咱也不知道它里面是什么鬼,大概猜一下是去調用pip-script.py
  • pip-script.py的內容,和linux下的pip內容基本一致

因此,如法炮制。例如我要放一個命令叫做c3pd,則:

  • 把c3pd-script.py放到pip.exe所在目錄(E:/soft/Miniconda/Scripts)
  • 同一目錄下,放一個c3pd.bat腳本,里面內容是調用c3pd-script.py。注意路徑要用~dp0為前綴;注意接收所有參數:

c3pd.bat內容:

python %~dp0/c3pd-script.py %*

其中%*相當於bash里的$@

參考

Making #!/usr/bin/env python work on Windows


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM