Псевдоним не работает?

Является ли OpenSSH реализацией SSH-сервера? Это также реализация SSH-клиента?

OpenSSH предоставляет и то, и другое, а серверная и клиентская реализация.

Разве AutoSSH не является реализацией SSH-сервера? Это реализация клиента SSH?

Также, autossh не является просто оболочкой для ssh .

autossh - это программа, запускающая копию ssh и отслеживающая ее, при необходимости перезапускающая ее, если она умирает или прекращает передачу трафика.

Источник

1
14.06.2018, 07:48
2 ответа

Попробуйте посмотреть, что csh определил для вашего псевдонима, введя это в командной строке:

% псевдоним bw

bjobs -w | awk '{print }'

Что случилось? оболочка расширила переменную оболочки с именем $7, которая оказалась ничем, и вставила это нулевое значение в определение псевдонима.

Таким образом, это само по себе предлагает решение, нам нужно указать доллар в 7 долларах, подальше от посторонних глаз оболочки, чтобы он был введен буквально в определение псевдонима:

% псевдоним bw "bjobs -w | awk '{print "\$"7}'"

Теперь, когда мы проверяем, что такое псевдоним:

% псевдоним bw

bjobs -w | awk '{print $7}'

и это именно то, что вы должны ввести в командной строке!

Чтобы выполнить запись определения псевдонима, мы выполняем это в 3 шага:

 - The quoting is done by closing the double quotes just before the $ to
            come out of the alias' quoting.
 - Now the $ needs to be escaped via a backslash to stop it from being 
            expanded before the alias takes effect.
 - Start the double quotes to re-enter the alias' quoting.

**Я хотел бы изобразить эту вещь наглядным образом, что делает ее очень тривиальной для понимания.

1
28.01.2020, 00:33

Попробуйте:

alias bw 'bjobs -w | awk '\''{print $7}'\'''

cshцитирование болезненно.

0
28.01.2020, 00:33

Теги

Похожие вопросы