【linux】終端直接執行py文件,不須要python命令


先將終端所在路徑切換到python腳本文件的目錄下
而後給腳本文件運行權限,通常755就OK,若是徹底是本身的私人電腦,也不作服務器什麼的,給777的權限問題也不大(具體權限含義參考chmod指令的介紹,就不贅述了):
chmod 755 ./*.py
而後執行。
若是在腳本內容的開頭已經給出了相似於以下的註釋:
#!/usr/bin/env python
那就能夠直接在終端裏運行:
./*.py
若是沒有這個註釋
就在終端中執行:
python ./*.py
若是是有圖形界面的腳本
在前面的chmod以後,直接雙擊(KDE桌面是單擊)文件來執行便可
追問
若是把文件1.py放到tmp文件夾中,如何運行?命令能寫具體一點嗎?腳本內容的開頭有:#!/usr/bin/env python
回答
那就直接運行(假設你的文件名是A.py):
/tmp/A.py
或先切換目錄,再運行:
cd /tmp
./A.py
若是該文件須要修改跟用戶權限下的一些文件或目錄
就將自身提高爲跟用戶權限:
sudo /tmp/A.py
或直接將自身提高爲跟用戶再運行:
su root
/tmp/A.py
另:Ubuntu等發行版默認不支持su root的操做,只能用sudo
追問
把A.py文件放入tmp文件夾中 
執行sudo /tmp/A.py 出現以下提示sudo:/tmp/A.py:command not found
執行/tmp/A.py 出現以下提示:-bash:/tmp/A.py:permission denied
使用cd /tmp 而後執行出現提示和上面同樣,不知道是怎麼回事,是我哪裏弄錯了?
回答
這樣的話,我知道的通常有兩種狀況:
1.
文件開頭沒有執行註釋:#!/usr/bin/env python
但你以前說有這一行
2.
就是沒用chmod
上面說了,最開始要給腳本設置權限
若是電腦是你一我的用,那就chmod 777 /tmp/A.py就行了
若是還有別人用,就給個chmod 755 /tmp/A.py好了
這個chmod和後面提到的哪一個sudo兩個都是關於權限的命令,可是是不一樣的,互相也沒什麼關係
簡單點說:chmod的權限是決定誰有權去碰這個腳本(讀、寫、執行),而sudo的權限決定的是這個腳本有權去碰誰。

若是以上兩個都試過了,仍是不行,我就無能爲力了
確認一下是否正確安裝了python解釋器吧~~
而後嘗試着直接調用python去執行吧:
python /tmp/A.py
相似這樣的命令。固然必要的時候chmod和sudo也是用的。
提問者評價
仍是不行,不知道怎麼回事。抽空學一下基本的linux,謝謝先
相關文章
相關標籤/搜索