2012-12-09 13 views
13

私はモジュール上でいくつかの質問を見つけましたが、より一般的な問題は、私が管理していると思う引数リストを得ているようです(python subprocess.call() "そのようなファイルやディレクトリはありません"

私は、コマンドラインで次のように入力を期待するプログラムを実行しようとしています、「中」と

fits2ndf in out 

は、ファイルのファイルパスは、パスとファイル名であること「アウト」変換とされるされています結果をに保存します。設定shell=TRUEので、サブプロセスを使用して

subprocess.call(["fits2ndf","/media/tom_hdd/Transfer/reference.fits","/media/tom_hdd/Transfer/reference.sdf"]) 

これは上げ、

Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
File "/usr/lib/python2.7/subprocess.py", line 493, in call 
return Popen(*popenargs, **kwargs).wait() 
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__ 
errread, errwrite) 
File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child 
raise child_exception 
OSError: [Errno 2] No such file or directory 

は(私が悪いです知っている)と同じ結果を生成します。それが関連しているかどうかわかりませんが、私はtcshを使用しています。助言がありますか?


編集質問

に応じて、私は永久にfits2ndf私は

% tcsh 
% setenv STARLINK_DIR /home/tomq/star-kapuahi 
% source $STARLINK_DIR/etc/login 
% source $STARLINK_DIR/etc/cshrc 

を使用して初期化し、通常の任意の中から作品のプログラムのパッケージの一部であるしかし、PATHを設定していませんディレクトリに移動します。

+0

がパスで 'fits2ndf'のですか? –

+0

申し訳ありませんがあなたの質問を理解していない、fits2ndfは別のディレクトリに含まれていますが、フルパスなしで別の場所でうまく動作しましたが、.fitsファイルへのパスの一部であってはいけません。 – user1889259

+1

@KarthikはPATH環境変数を参照していました。あなたの$ PATHに 'fits2ndf'を含むディレクトリがあり、PATHがエクスポートされていますか? – cdarke

答えて

9

which fits2ndfには、fits2ndfのパスが表示されます。

その後、コードに完全なパスを書くことができます。

例:

~$ which mv 
/bin/mv 

私のpythonコード:

import subprocess 

subprocess.call(["/bin/mv","/tmp/a","/tmp/b"]) 
+3

ありがとうございました。これはうまくいかなかったので、毎回fits2ndfのフルパスを指定する必要はありませんか?事実、理想的には、パスなしでそのフォルダ内の任意のプログラムを使用できますか?それは物事をかなり乱雑にします。 – user1889259

+1

http://www.troubleshooters.com/linux/prepostpath.htm – denizeren

0

は、あなたが正確な方向を指していることを確認してください"fits2ndf /media/tom_hdd/Transfer/reference.fits /media/tom_hdd/Transfer/reference.sdf"

のように、また、

" /media/tom_hdd/Transfer/reference.sdf"にスペースを削除し、1つの文字列にすべてをかけるtpはしようとする場合があります。

+0

良い点、ありがとう。残念なことに、この質問を書くときにのみ現れ、コードには書かれていないので、何も変更されていません。 – user1889259

+0

私の答えを編集しました。 – Lotzki

関連する問題