![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Пример 1. # одинарные кавычки блокируют действие обратных кавычек
$ date Apr 3 14: 27: 07 2005 $ set `date` $ echo $3 14: 30: 25 $ Пример 2. $echo `ls` fil.1 fil.2 ... $echo '`ls`' # одинарные кавычки блокируют действие обратных кавычек # т.е. они распечатываются как обычные символы `ls` $ Пример 3. $ls -al|grep “Mar 30” выводится информация о всех файлах текущего каталога, модифицированных 30 марта всех годов; Эта же командная строка без кавычек приобретает совершенно другой смысл: $ls -al|grep Mar 30 здесь Mar –шаблон, а 30 – имя файла. Для ввода строки текста со стандартного устройства ввода используется оператор: read имя1 [имя2 имя3.] - чтение строки слов со стандартного ввода Команда вводит строку, состоящую из нескольких полей (слов), со стандартного ввода, заводит переменную для каждого поля и присваивает первой переменной имя1, второй переменной - имя2, и т.д. Если имен больше, чем полей в строке, то оставшиеся переменные будут инициализированы пустым значением. Если полей больше, чем имен переменных, то последней переменной будет присвоена подстрока введенной строки, содержащая все оставшиеся поля, включая разделители между ними. В частности, если имя указано только одно, то соответствующей ему переменной присваивается значение всей строки целиком. Пример (предполагает наличие программы –русификатора): #Текст процедуры: echo " Введите значения текущих: гг мм ччвв" read 1v 2v 3v echo " год 1v" echo " месяц 2v" echo " сегодня 3v" # здесь кавычки используются для блокирования пробелов Результат выполнения процедуры: Введите значения текущих: гг мм ччвв 2005 Maрт 21 9: 30 < Enter> год 2005 месяц Maрт сегодня 21 9: 30 Управление локальными переменными В отличии от рассмотренных в начале курса системных переменных среды, переменные языка shell называются локальными переменными и используются в теле процедур для решения обычных задач. Локальные переменные связаны только с породившим их процессом. Локальные переменные могут иметь имя, состоящее из одного или нескольких символов. Присваивание значений переменным осуществляется с помощью известного оператора " =" - присвоить (установить) значение переменной. При этом если переменная существовала, то новое значение замещает старое. Если переменная не существовала, то она строится автоматически shell. Переменные хранятся в области ОП - области локальных данных. $count=3 $color=red belt $fildir=lev/d1/d12 $ Еще пример: # текст процедуры b=”1 + 2” echo c=$b #в результате выполнения процедуры выводится текст, # включающий текст переменной b c=1+2
|