19.10.2. Редактирование shell–функций
19.10.2. Редактирование shell–функций
А теперь изменим файл fiinctions.main. Добавим в функцию цикл for, в результате чего сценарий сможет считывать более одного параметра из командной строки. Функция приобретет следующий вид:
$ pg functions.main
#!/bin/sh findit ()
{
# findit
#if [ $# -lt 1 3; then
echo "usage: findit file"
return 1 fi
for loop do
find / -name $LOOP -print done }
Снова загрузим исходный файл:
$ . ./functions.main
Используйте команду set, чтобы убедиться, что файл действительно загружен. Если интерпретатор shell корректно интерпретирует цикл for и воспринимает все требуемые параметры, на экране отобразится соответствующее сообщение.
$ set
findit=()
{
if [ $# -lt 1 ]; then
echo "usage :`basename $0` file";
return 1; fi;
for loop in "$@"; do
find / -name $LOOP -print; done }
Далее вызывается измененная функция findit. При этом поддерживаются два файла с целью осуществления поиска:
$ findit LPSO.doc passwd
/usr/local/accounts/LPSO.doc
/etc/passwd
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Наконец, Z-Shell
Наконец, Z-Shell Как известно, Z – последняя буква латинского алфавита. И её наличие в имени следующего нашего персонажа, Z-Shell (или просто zsh) призвано символизировать то, что эта оболочка представляет собой последнюю ступень в развитии командных оболочек вообще. Хотя на самом
Zsh как login shell
Zsh как login shell В Mint в качестве системной командной оболочки, то есть интерпретатора общесистемных сценариев, выступает Dash (Debian-клон оболочки Альмквиста, ash), лёгкая и компактная, но имеющая слабые возможности для интерактивной работы. Для последней, как и в подавляющем
Spb Mobile Shell
Spb Mobile Shell Страница программы: http://www.spbsoftwarehouse.comСтатус: Shareware, $17Казалось бы, выпустив Pocket Plus, компания Spb Software может спокойно закрыть тему изменялок интерфейса и заняться чем-нибудь другим. Ничуть не бывало – на свет появился еще более радикальный продукт, который не
23.3. Команды shell
23.3. Команды shell Shell-команды – это системные команды, с помощью которых можно быстро запускать разные объекты или выполнять над ними различные действия.Выполнение shell-команд можно производить любым доступным способом, но чаще всего для этого используется строка поиска в
17.5.1.3. Переносимость shell
17.5.1.3. Переносимость shell Переносимость shell-сценариев, к сожалению, является низкой. Проблема заключается не в самой оболочке; bash(1) (Bourne Again shell с открытым исходным кодом) распространена достаточно широко, для того чтобы малоразвитые shell-сценарии могли выполняться почти в
17.5.1.3. Переносимость shell
17.5.1.3. Переносимость shell Переносимость shell-сценариев, к сожалению, является низкой. Проблема заключается не в самой оболочке; bash(1) (Bourne Again shell с открытым исходным кодом) распространена достаточно широко, для того чтобы малоразвитые shell-сценарии могли выполняться почти в
14.3. Библиотека Shell
14.3. Библиотека Shell Не всегда Ruby удобен в качестве языка сценариев. Например, в языке bash для запуска внешней программы достаточно просто указать ее имя безо всякого дополнительного синтаксиса.Оборотной стороной мощи и гибкости Ruby является более сложный синтаксис. Кроме
Совет 46. Передавайте алгоритмам объекты функций вместо функций
Совет 46. Передавайте алгоритмам объекты функций вместо функций Часто говорят, что повышение уровня абстракции языков высокого уровня приводит к снижению эффективности сгенерированного кода. Александр Степанов, изобретатель STL, однажды разработал небольшой комплекс
12.3.5. Адаптеры функций для объектов-функций
12.3.5. Адаптеры функций для объектов-функций В стандартной библиотеке имеется также ряд адаптеров функций, предназначенных для специализации и расширения как унарных, так и бинарных объектов-функций. Адаптеры – это специальные классы, разбитые на следующие две
19.10. Вызов функций интерпретатора shell
19.10. Вызов функций интерпретатора shell Для вызова функции просто введите ее имя (в данном случае findit) и укажите аргумент, в роли которого может выступать файл, размещенный в системе.$ findit groups/usr/bin/groups
19.10.1. Удаление shell–функций
19.10.1. Удаление shell–функций Теперь настало время немного изменить функцию. Сначала функция будет удалена, в результате чего она не будет доступна интерпретатору shell. Для выполнения этой операции применяется команда unset. При вызове данной команды используется следующий
19.11.2. Вызов функций из файла функций
19.11.2. Вызов функций из файла функций Мы уже рассматривали, каким образом функции вызываются из командной строки. Эти типы функций обычно используются утилитами, создающими системные сообщения.А теперь воспользуемся снова описанной выше функцией, но в этом случае