2012-04-12 31 views
1

私は、コマンドラインからkonsoleのインスタンスを開き、Pythonスクリプトを実行しようとしています。私がしようとしている:"konsole"コマンドを使ってPythonスクリプトを実行する

konsole -hold -e 'python -i hello.py' 

を私が得ている行動が持続的konsoleのが開いていることである、と私はpythonの中に落としていますが、スクリプトは実行されません。

Python 2.7.2+ (default, Oct 4 2011, 20:03:08) 
[GCC 4.6.1] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> 

konsoleウィンドウでpythonスクリプトを実行するにはどうすればよいですか?

+0

: (1)ファイル「hello.pyは」(2)私の究極の目標は、ケイトに「外部ツール」を持っているライン 印刷(「こんにちはのpythonから」) ですました現在のスクリプトを実行します。私は試しています: cd "%directory" && konsole -e 'python -i "%filename"' と私は上記のコマンドラインからのコマンドを使って同じ動作をします。 – abalter

+0

私は 'konsole'を使用しませんが、' -e'パラメータは 'xterm'からよく知られています。あなたはそれを正しく使用しているようです。それは 'xterm'でうまく動作します。 – zigg

答えて

2

jsbuenoのソリューションが正しいものです。 hereを説明するようにしかし、あなたはまた、このような何か...

konsole --hold -e /bin/sh -c "python -i hello.py"

P.S.を行うことができます--workdir(-e argの前に)を指定するか、konsoleの初期作業ディレクトリに必ず存在するとは限りませんが、pythonスクリプトのフルパスを指定する必要があります。しかし、おそらくあなたはすでにそれを知っていたでしょう。ところで

+0

上記の問題は同じです。 – abalter

+0

P.S.をより詳しく見たいと思うかもしれません。私の答えで。 'hello.py'に対して' [Errno 2] No such file or directory'と表示されている場合、konsoleはあなたが期待しているものとは異なる初期作業ディレクトリを持っているようです。 – Marty

+0

ゴリによって、それはやった! P.S.に注意を払わないのは残念です。 – abalter

2

問題は、 "konsole"が-eスイッチの後にパラメータを使用する方法です。パラメータ区切り文字としてスペース区切り文字を解釈しない呼び出しで単純に渡すように見えます。あなたが内部の通話パラメータを入れていない場合しかし、それは動作します

を引用している - つまり、単に:

konsole --hold -e python -i hello.py 

を(私はここでそれをテストした)

+0

私はgnome端末からテストしたところ、失敗しました。 [email protected]:/nfs/concen/usr2/cslab/home/ariel.balter /書類$ LS *の.py hello.py 私が開くkonsoleのウィンドウで、次のエラーを取得する: は/ usr/bin/python: 'hello.py'ファイルを開くことができません:[Errno 2]そのようなファイルやディレクトリはありません – abalter

関連する問題