Как присвоить значения переменным при выполнении команд от имени другого пользователя в bash [дубликат]Linux

Anonymous
Как присвоить значения переменным при выполнении команд от имени другого пользователя в bash [дубликат]

Сообщение Anonymous »

Почему это работает?:

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

sudo -u user bash  cat /home/user/.ssh/id_ed25519.pub
> EOF

ssh-ed25519 AAAAC3NXXXXXXXXXXXXXXXXXXXXXXXXX......  user@host
но это не так:

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

sudo -u user bash  SSH_KEY=`cat /home/user/.ssh/id_ed25519.pub`
> echo $SSH_KEY
> EOF

cat: /home/user/.ssh/id_ed25519.pub: Permission denied
Как правильно присвоить значение переменной в области «пользователь».
Я хочу использовать это в скрипте чтобы автоматизировать загрузку новых открытых ключей на сторонний сайт.
Обновить
Экранирование EOF работает!. Спасибо! (Но нет необходимости менять обратные кавычки, они тоже работают).

Подробнее здесь: https://stackoverflow.com/questions/783 ... user-in-ba

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