我正在嘗試將程序TOPCAT(具有非常驚人的繪圖功能)合併到我寫的python腳本中。問題是,當我撥打電話的程序它告訴我:通過命令行打開TOPCAT通過Python腳本
OSError: [Errno 2] No such file or directory
下面是一些背景的問題:
1)我通常通過命令行打開topcat的方式是通過別名我已經創建:
alias topcat='java -jar /home/username/topcat/topcat-full.jar'
2)如果我想開TOPCAT用一記文件(讓我們使用一個CSV文件,因爲這就是我想它的工作),我會鍵入此進入命令行:
topcat -f csv /home/username/path_to_csv_file/file.csv
而且這也工作得很好。當我嘗試在我的python腳本中調用這些命令時出現問題。我已經嘗試了subprocess.call和os.system,並且由於某種原因他們似乎並不知道topcat別名的存在。即使做一個簡單的調用,比如:
import subprocess
subprocess.call(['topcat'])
不工作......不過,我可以得到topcat打開,如果我運行此:
import subprocess
subprocess.call(['java','-jar','/home/username/topcat/topcat-full.jar'])
這樣做的問題是,它只是打開該程序,並且不允許我告訴它要接收哪個文件以及它碰巧是什麼類型。
有人能告訴我我在這裏做錯了嗎?我也看過shell=True
選項,它似乎沒有更好的。