2013-12-11 146 views
0

我有一個Python腳本「program.py」,需要2個命令行參數。在命令行上運行python文件?

當我想上運行命令行這一計劃,我應該輸入:

./python myprogram.py arg1 arg2 


不過,我想沒有「蟒蛇」運行我的腳本和「py」爲

換句話說,我想這樣做:

./myprogram arg1 arg2 


我寫了一個shell腳本 「myprogram.sh」:

#!/bin/bash 
python myprogram.py 


但我還是必須通過鍵入

./sh myprogram.sh arg1 arg2 

這仍然不是我想要的運行此

有沒有辦法做到這一點?

感謝

+0

你讓它可執行嗎? http://effbot.org/pyfaq/how-do-i-make-a-python-script-executable-on-unix.htm – dm03514

回答

1

將一個認領你的腳本的開頭,像

#! /usr/bin/env python 

的文件擴展名是不管任何責任。所以只需將您的文件命名爲「program」而不是「program.py」。

然後給自己來執行它

chmod +x myprogram 

或使其可執行每個人的權利:

chmod a+x myprogram 

然後從外殼

./myprogram arg1 arg2 

這裏稱它爲一個完整的例子:

$echo "#! /usr/bin/env python 
> print('Here be dragons.')" > program 
$chmod +x program 
$./program 
Here be dragons. 
$ 
3

作爲myprogram.py第一行中,把下面的:

#!/usr/bin/env python 

然後,在命令行中,在同一目錄中myprogram.py,輸入以下命令:

mv myprogram.py myprogram 
chmod +x myprogram 

你一切都準備好了!