[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]

Руководство пользователя: Операционная система и устройства


Подстановка команд в оболочке Korn (POSIX)

В оболочке Korn (другое название - POSIX) можно выполнять подстановку команд.

При подстановке оболочка выполняет указанную команду в среде подоболочки и заменяет команду на ее вывод. Для подстановки команд в оболочке Korn (POSIX) выполните следующие действия:

$(команда)

или воспользуйтесь обратными кавычками:

`команда`

Примечание: Хотя обратные кавычки распознаются оболочкой ksh, в стандартах XPG4 и POSIX они считаются устаревшими. В этих стандартах рекомендуется применять в приложениях формат $(команда).

Оболочка подставляет команду, выполняя команду в среде подоболочки, и заменяя ее (текст команды и окружающие его символы $( ) или обратные кавычки) на полученный стандартный вывод, удаляя при этом все символы новой строки в конце вывода.

В следующем примере символы $( ), в которые заключена команда, указывают, что выполняется подстановка для команды whoami:

echo Меня зовут: $(whoami)

Ту же подстановку можно выполнить и по-другому:

echo Меня зовут: `whoami`

В обоих случаях вывод для пользователя dee будет следующим:

Меня зовут: dee 

Можно подставлять и арифметические выражения, заключая их в круглые скобки. Например, команда:

echo В одном часе $((60 * 60)) секунд

выдаст следующий результат:

В одном часе 3600 секунд

При подстановке команд оболочка Korn (POSIX) удаляет все конечные символы новой строки. Например, если текущий каталог содержит файлы файл1, файл2 и файл3, то команда:

echo $(ls)

удалит символы новой строки и создаст следующий вывод:

файл1 файл2 файл3

Если вы хотите сохранить символы новой строки, укажите команду в двойных кавычках (" "):

echo "$(ls)"


[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]