我正在用python編寫一個非常基本的應用程序(目前它只有一個文件)。我的問題是我如何獲得它,所以python腳本能夠在沒有.py擴展名的/ usr/bin中運行?Python腳本在/ usr/bin
例如,而不是運行
python htswap.py args
從那裏目前是,我希望能夠到CD到任意目錄,並提前做
htswap args
感謝目錄
!
我正在用python編寫一個非常基本的應用程序(目前它只有一個文件)。我的問題是我如何獲得它,所以python腳本能夠在沒有.py擴展名的/ usr/bin中運行?Python腳本在/ usr/bin
例如,而不是運行
python htswap.py args
從那裏目前是,我希望能夠到CD到任意目錄,並提前做
htswap args
感謝目錄
!
通過重命名文件,可以簡單地剝離.py
擴展名。然後,你必須把下面一行在你的文件的頂部:
#!/usr/bin/env python
env
是一個小程序,設置,使執行權python
解釋環境。
您也可以使你的文件的可執行文件,用命令
chmod a+x htswap
並轉存到/usr/local/bin
。這比/usr/bin
更乾淨,因爲該目錄的內容通常由操作系統管理。
該文件的第一行應該是
#!/usr/bin/env python
您應該刪除.py
擴展,使文件的可執行文件,使用
chmod ugo+x htswap
編輯:正確輸出,這樣Thomas點腳本應放置在/usr/local/bin
而不是/usr/bin
。請大家回答他的回答(也許是我的代價)。對於這種東西,我們所說的七個贊成票是荒謬的)
沒錯,就是這樣,我早些時候做了這個,由於某種原因,它沒有奏效,結果我忘記了!在shebang – 2009-07-22 20:32:40
添加#!/usr/bin/env python
到htswap.py
最頂部,並重新命名htswap.py
到htswap
然後執行命令:chmod +x htswap
使htswap可執行文件。
我在Python的官方教程,http://docs.python.org/tutorial/index.html看,那
#! /usr/bin/env python
使用,就像上面的答案建議。請注意,您還可以使用以下內容
#!/usr/bin/python
這是您將在shell腳本中看到的樣式,如bash腳本。例如
#!/bin/bash
看到官方的嘖嘖具有第一個選項,可能是你最好的選擇。代碼中的一致性是要努力的!
作爲參考,第一個更好,因爲它是可移植的。並非每個文件系統都有第二種選擇。 – JasTonAChair 2017-02-19 00:48:29
經過很多痛苦和瀕死體驗後,我建議使用爲#!/ usr/bin/env開發的特定python版本python。(例如python2.4)。更好地控制python版本運行可執行文件(至少對於我經歷過的情況,YMMV) –
2009-09-21 17:31:50