Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Пример 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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.