Используйте Python для динамического создания псевдонимов BashPython

Программы на Python
Ответить
Anonymous
 Используйте Python для динамического создания псевдонимов Bash

Сообщение Anonymous »

Я пытаюсь использовать Python для динамического создания псевдонимов Bash (например, псевдонимов для входа на набор серверов). Мне бы очень хотелось сделать что-то вроде этого:

Код: Выделить всё

from subprocess import call
SERVERS = [
("example", "user@example.com"),
#more servers in list
]

for server in SERVERS:
call('alias %s="ssh %s"' % (server[0], server[1]), shell=True)
Проблема в том, что подпроцесс запускает задания в отдельном сеансе оболочки, поэтому программа работает нормально, но ничего не делает с сеансом оболочки, из которого я ее запускаю.

Та же проблема возникает с os.system Python или при попытке распечатать команды и передать их в bash (все они создают псевдонимы, но в новой оболочке, которая сразу уничтожается после завершения работы программы).

В конечном счете, цель этого — запустить этот скрипт из .bashrc

Как это сделать?

Подробнее здесь: https://stackoverflow.com/questions/216 ... sh-aliases
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»