Logo Спонсор сайта — Хостинг Fornex.com Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
VPS/VDS за 1 евро!

vCore x1, 1 GB RAM ECC, 15 GB SSD (RAID 10), Port 1 Gbps, Трафик ∞, Виртуализатор KVM.

Выбор стран: Нидерланды, Молдова и Россия!

Сверхбыстрый хостинг от 69 р./мес., VPS от 299 р./мес.

Бесплатно: администрирование + ISPmanager + DDoS защита + SSL + 7 дней тестовый период

Скидка 50% на первый месяц VPS и хостинга по промокоду CITFORUM

Тарифы от 59 руб в месяц за 512MB RAM и 5Gb NVMe SSD!

Hi-CPU тарифы с повышенной частотой процессора 3.8 – 4.2 GHz, автоматическая установка Windows

Дата-центры на выбор, защита от DDoS-атак

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

2004 г.

Linux для пользователя

Виктор Костромин, http://rus-linux.net/

Глава 5. Оболочка bash

Предыдущий разделОглавлениеСледующий раздел

5.3. Выполнение команд

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

5.3.1 Оператор ;

Хотя чаще всего пользователь задает команды в командной строке по одной, имеется возможность задать в одной строке несколько команд, которые будут выполнены последовательно, одна за другой. Для этого используется специальный символ -оператор ;. Если не поставить этот разделитель команд, то последующая команда может быть воспринята как аргумент предыдущей. Таким образом, если написать в командной строке что-то вроде:

[user]$ command1 ; command2

то оболочка вначале запустит на выполнение команду command1, дождется, пока ее выполнение завершится, после чего запустит command2, дождется ее завершения, после чего снова выведет приглашение командной строки, ожидая следующих действий пользователя.

5.3.2 Оператор &

Оператор & используется для того, чтобы организовать исполнение команд в фоновом режиме. Если поставить значок & после команды, то оболочка вернет управление пользователю сразу после запуска команды, не дожидаясь, пока выполнение команды завершится. Например, если задать в командной строке "command1 & command2 &", то оболочка запустит команду command1, сразу же затем команду command2, и затем немедленно вернет управление пользователю.

5.3.3 Операторы && и ||

Операторы && и || являются управляющими операторами. Если в командной строке стоит command1 && command2, то command2 выполняется в том, и только в том случае, если статус выхода из команды command1 равен нулю, что говорит об успешном ее завершении. Аналогично, если командная строка имеет вид command1 || command2, то команда command2 выполняется тогда, и только тогда, когда статус выхода из команды command1 отличен от нуля.

Сама техника организации запуска команд на выполнение не является предметом нашего рассмотрения. Можно только кратко сказать, что оболочка должна найти код команды, загрузить его в память, передать команде аргументы, заданные в командной строке, а после завершения выполнения соответствующего процесса передать каким-то образом пользователю или другому процессу результаты выполнения данной команды. Эти этапы мы кратко и рассмотрим.

Итак, первый этап — поиск кода команды. Команды бывают встроенные (те, код которых включен в код самой оболочки) и внешние (код которых расположен в отдельном файле на диске). Встроенную команду оболочка всегда найдет, а для поиска внешней команды пользователь, в принципе, должен указать оболочке полный путь до соответствующего файла. Однако для облегчения жизни пользователей оболочка умеет искать внешние команды в каталогах, которые перечислены в специально заданных "путях поиска". Только если она не находит нужных файлов в таких каталогах, она решает, что пользователь ошибся при вводе имени команды. О том, как включить каталог в пути поиска, будет сказано ниже, а сейчас рассмотрим, как оболочка организует передачу данных исполняемой команде и выдачу результатов пользователю.
Предыдущий разделОглавлениеСледующий раздел

хостинг сайтов ГиперХост — хостинг сайтов который Вы искали.

Виртуальный хостинг, Аренда VPS серверов, рация доменных имен, SSL сертификаты

Новости мира IT:

Архив новостей

Последние комментарии:

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2015 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...