Выполнение alias'ов шела средствами Python
Работаю с модулем subprocess. При выполнении кода по типу:
subprocess.call('ls')
в консоль получаем ожидаемый вывод:
задача была в том, чтобы также вызвать alias команды, например
subprocess.call('la')
который эвивалентен записи ls -A, но при таком раскладе интерпритатор выдаёт ошибку:
В скрипте мне нужно вызывать именно alias'ы команд. Возможно ли это сделать средствами python? Или проще создать словарь со значениями alias'ов и команд, но тогда как передавать в subprocess аргументы, если я не знаю сколько дополнительных параметров будет у той или иной комманды (а это может быть и довольно громоздкий из нескольких строк сценарий)? Ай нид хэлп)
Ответы (1 шт):
например, так:
$ python -c 'import subprocess,os; subprocess.call([os.environ["SHELL"],"-ic","la"])'
опции поддерживаются всеми posix-совместимыми оболочками:
-i— интерактивная сессия-c команда— выполнить команду

