У моїй повсякденній роботі я часто потребую використання з'єднання ssh на пристрої (яке ви можете розглядати як читане), і команди, які я пишу, довгі.
Ось чому я хотів би завантажити деякі псевдоніми безпосередньо після входу ssh. Але коли я намагаюсь щось наслідувати, він не працює:
ssh name @ ipAdress "bash -l; alias short =" veryLongCommandThatIWriteOften ""
Я думаю, що це тому, що bash припиняє обробку інших команд, які одразу ж після.
Чи можна встановити псевдоніми безпосередньо як аргумент bash, чи існує інше рішення зробити те, що я хочу?
Відповіді:
3 для відповіді № 1Замість псевдоніма, ви можете використовувати функцію оболонки, яка bash
дозволяє експортувати. Таким чином, ви спочатку визначте функцію, потім експортуйте її назву, і, нарешті, запустіть a новий інтерактивна оболонка, яка успадковує вашу функцію. Наприклад:
ssh -t name@ipAddress "short () { veryLongCommandThatIWriteOften; }; export -f short; bash"
The -t
необхідно налаштувати псевдо термінал для інтерактивного bash
оболонка, як ssh
не вийде автоматично для явно неінтерактивної команди.
Зауважте, що вам багато треба бути обережними щодо цитування, в залежності від того, що є тілом short
є
0 для відповіді № 2
Відредагуйте файл ~ / .bashrc
nano ~ / .bashrc
У ньому є приклади того, як також можна встановити псевдоніми. Увійдіть знову, щоб працювати псевдонім.