![运行 sac2xy 返回 sac2xy:无法在 osx 10.9 上执行二进制文件](https://linux22.com/image/1412403/%E8%BF%90%E8%A1%8C%20sac2xy%20%E8%BF%94%E5%9B%9E%20sac2xy%EF%BC%9A%E6%97%A0%E6%B3%95%E5%9C%A8%20osx%2010.9%20%E4%B8%8A%E6%89%A7%E8%A1%8C%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6.png)
我有一个用于绘制数据的 Python 脚本sac2xy
,但是运行时出现错误sac2xy
:
sh: sac2xy: command not found
代码的相关部分是:
os.system("sac ./tmp/sac.m")
os.system("clear")
os.system("sac2xy ./tmp/n_"+filename[i]+".am ./tmp/n_"+filename[i]+".xy")
os.system("sac2xy ./tmp/c_"+filename[i]+".am ./tmp/c_"+filename[i]+".xy")
c_amp = []
c_f = []
n_amp = []
n_f = []
fopen = open("./tmp/c_"+filename[i]+".xy")
for line in fopen:
c_f.append(float(line.split()[0]))
c_amp.append(float(line.split()[1]))
fopen.close()
fopen = open("./tmp/n_"+filename[i]+".xy")
for line in fopen:
n_f.append(float(line.split()[0]))
n_amp.append(float(line.split()[1]))
fopen.close()
答案1
它无法找到可执行文件。转到 shell 并输入:
type sac2xy
这将给出可执行文件的路径。无论如何,指定可执行文件的完整路径名是个好主意;它可以节省查找时间,并保证您正在运行所需的可执行文件,而不是攻击者可能放在某处的其他可执行文件。
请注意,os.system
现已弃用。该subprocess
模块应用于新程序。