У меня есть сценарий 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 ответ1

0

Он не может найти исполняемый файл. Перейдите в оболочку и введите:

type sac2xy

Это даст путь к исполняемому файлу. В любом случае, желательно указывать полный путь к исполняемому файлу; это экономит время поиска и гарантирует, что вы запускаете нужный вам исполняемый файл, а не какой-либо другой исполняемый файл, который злоумышленник мог где-то разместить.

Обратите внимание, что os.system теперь устарела. Модуль subprocess должен использоваться для новых программ.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .