Почему бы не использовать псевдоним в составных командах?

netstat может не отображать никаких сведений о 11413, потому что этот порт может не использоваться в то время. Вы можете попросить сетевую команду сообщать вам всякий раз, когда они видят криминальный трафик, чтобы вы могли проверить, выполнив

lsof -i :11413

или

Создайте простой скрипт для выполнения в цикле с командой sleep (для определения временного интервала ) и выполните команду lsof -i: 11413 и запишите o / p в файл при успешном выполнении.

2
06.08.2017, 07:27
1 ответ

But why does "do not use alias in compound commands" generalize from function definitions to general compound commands?

Наоборот (ваш отрывок из руководства по bash неполный ). Составные команды обобщаются до определений функций, которые являются составными командами.

Составная команда выполняется после ее полного чтения. Псевдонимы определяются при их выполнении, а не при чтении (очевидно ). Но замена псевдонима происходит только при чтении команды.

Возьмем, к примеру, эту составную команду:

$ alias echo='echo Follow my advice:' &&
> echo Alias is a basic substitution mechanism
Alias is a basic substitution mechanism

$ echo Use aliases sparingly
Follow my advice: Use aliases sparingly

Во-первых, вы видите, что поскольку &&вводит составную команду, оболочка ничего не выполняет и запрашивает вторую строку ввода.

Когда эта двухстрочная составная команда -читается , перед выполнением команды заменяются псевдонимы. На момент этой замены псевдоним echoеще не существует, поэтому ничего не заменяется. Наконец, когда выполняется вся команда, используется встроенная команда echo, даже если она идет после определения псевдонима.

Когда второй командой echoявляется чтение , псевдоним echoсуществует и заменяется. Таким образом, выполняется команда echo Follow my advice: Use aliases sparingly.

Определение функции — это более крупная составная команда, но принцип работы такой же. Любое определение внутреннего псевдонима вступает в силу только при вызове функции.

5
27.01.2020, 21:58

Теги

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