Я бегу Python 3.6 на коробке Centos.
Вот мой нерабочий код
shell_command = subprocess.check_output(["ll"],shell=True, universal_newlines=True, executable='/bin/bash')
Вот вывод:
/bin/bash: ll: command not found
Traceback (most recent call last):
File "./snmp_test.py", line 17, in <module>
shell_command = subprocess.check_output(["ll"],shell=True, universal_newlines=True, executable='/bin/bash')
File "/data/prod_envs/pythons/python36/lib/python3.6/subprocess.py", line 336, in check_output
**kwargs).stdout
File "/data/prod_envs/pythons/python36/lib/python3.6/subprocess.py", line 418, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ll']' returned non-zero exit status 127
Итак, судя по ошибке
/bin/bash: ll: command not found
bash не знает ll
, что странно, потому что echo "$SHELL"
возвращает
/bin/bash
и через CLI работает команда ll
.
Я не могу понять, в чем проблема. У кого-нибудь есть идея?