Командная подстановка

Командная подстановка (command substitution) — это один из мощнейших механизмов Bash. Суть его сводится к тому, что результат выполнения одной команды автоматически передается в качестве аргументов другой команде. Внутренняя команда в командной подстановке должна быть заключена в от- крывающие обратные кавычки ``. Результаты ее работы автоматически под- ставляются в командную строку внешней команде. Командная подстановка выглядит следующим образом:

внешняя_команда `внутренняя_команда`


 

Вместо открывающих кавычек (``) можно использовать конструкцию $(),

т. е.:

внешняя_команда $(внутренняя_команда)

Исследуем в качестве примера две команды: which, которая выводит путь к заданной команде, и ls –l, отображающую подробную информацию о файле. Командная подстановка позволяет выполнить их так, что результат работы which (внутренняя команда) будет подставлен в качестве аргумента команде ls –l (внешняя).

 

Пример 2.32. Командная подстановка

 

$ which rpm

/bin/rpm

$ ls -l /bin/rpm

-rwxr-xr-x 1 rpm rpm 93692 Oct 12 /bin/rpm

$ ls -l `which rpm`

-rwxr-xr-x 1 rpm rpm 93692 Oct 12 /bin/rpm

 

Первая команда, приведенная в примере 2.32, определяет путь к программе rpm — which rpm. Путь /bin/rpm, полученный в результате работы пер- вой команды, вручную подставлен в качестве аргумента команде ls –l, которая выдала информацию об этом исполняемом файле. Последняя команда примера 2.32 демонстрирует командную подстановку: команда ls –l `which rpm` выполняет автоматическую подстановку результата ра- боты which команде ls –l.

Результаты, выводимые при работе внутренней команды в командной под- становке, могут быть занесены в переменную.

 

 








Дата добавления: 2015-06-12; просмотров: 821;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.