русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Вызов интерпретатора Shell


Дата добавления: 2013-12-23; просмотров: 748; Нарушение авторских прав


Среда выполнения команд

Все переменные и их значения, которые известны команде перед выполнением, образуют ее оболочку (среду выполнения). Эта оболочка включает в себя переменные, которые команда получает "по наследству" от родительского процесса, и переменные, указанные как ключевые параметры в командной строке, которая запускает команду. Переменные, которые Shell передает дочернему процессу - это переменные, перечисленные как аргументы в команде export. Эта команда помещает указанные переменные в оболочки как самого Shell, так и всех его будущих дочерних процессов.

Ключевые параметры - это пары переменная-значение, которые появляются в форме присвоений, обычно перед именем процедуры в командной строке. Такие переменные помещаются в оболочку вызываемой процедуры. Например:

# keycommand

echo $a $b

Это пример простой процедуры, которая выводит значения двух переменных. Если ее вызвать следующим образом:

a=key1 b=key2 keycommand

то результирующий вывод будет:

key1 key2

Ключевые параметры не являются аргументами и не изменяют $#. Процедура имеет доступ к значению любой переменной в своей оболочке. Однако, даже если значение переменной было изменено, эти изменения не отражаются на параметрах Shell; они относятся только к конкретной процедуре. Для того, чтобы эти изменения были переданы в дочерние процессы данной процедуры, эти переменные должны быть перечислены в команде export в этой процедуре. Чтобы получить список переменных, которые являются передаваемыми из текущего интерпретатора Shell, введите:

export

Вы также получите список переменных, которые можно только считывать. Чтобы получить список пар имя-значение в текущей оболочке, введите:

printenv

или

env

 

 

Shell - это команда и она может быть вызвана также как и любая другая команда:



sh proc [arg...] Новая копия Shell вызывается для чтения proc.

 

sh -v proc [arg...] Это эквивалентно помещению "set -v" в начале proc. Также можно указывать флаги -x, -e, -u, -n.

 

proc [arg...] Если proc является выполняемым файлом, не скомпилированной программой, то эффект будет такой же, как от команды:

sh proc args

Преимущество такой формы записи заключается в том, что переменные, которые были экспортированы в оболочку, будут передаваться и в процессы, запускаемые из proc. Таким образом, любые изменения, произведенные в отношении передаваемых переменных внутри proc, будут распространяться на последующие команды, вызываемые из proc.

 

 



<== предыдущая лекция | следующая лекция ==>
Флаги выполнения | Передача параметров в процедуры Shell


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.