Зміст звіту

1. Початкові дані і постановка задачі.

2. Текст програми.

3. Висновки.

Методичні вказівки

Аргументи командного рядка

Передача аргументів в програму відбувається таким чином:

<ім’я програми> [<арг.1> <арг.2>…]

Усередині програми доступ до аргументів здійснюється за допомогою спеціальних змінних, званих позиційними

$<n>, n – номер позицій парам.

$1 - перший

$2 - другий

Є ще додаткові можливості підстановки.

$0 ім’я сценарію

$* всі аргументи одним рядком

$@ всі аргументи окремо

$# кількість аргументів

$$ ідентифікаційний номер поточного процесу

$! ідентифікаційний номер фонового завдання

$? ідентифікаційний номер виконуваної команди

Команди shift і set

shift – здвигає номери аргументів

echo “$0 has $# arguments”

shift

echo “$0 has $# arguments”

set – встановлює позиційні параметри

Імена (ідентифікатори) позиційних параметрів складаються з однієї або більш за цифри (тільки не з одиночного нуля). Значеннями позиційних параметрів є аргументи, які були задані при запуску оболонки (перший аргумент є значенням позиційного параметра 1, і т. д.). Змінити значення позиційного параметра можна за допомогою вбудованої команди set

Т.ч. позиційні параметри можуть бути не обов'язково аргументи, а виведення будь-якої команди.

Приклад:

echo “$1 $2 $3”

set `uname -a`

echo “$1 $2 $3”

Арифметичні операції

Команди:

let

$(())

expr

let <вираз>

Обчислює арифметичні вирази, вираз порівняння.

Наприклад:

let 2*7 # видає значення одразу

let a=11 # Те ж саме, що і 'a=11'

let a=a+5 # Еквівалентно "a = a + 5"

let "a /= 4" # Еквівалентно let "a = a / 4"

let "a -= 5" #Еквівалентно let "a = a - 5"

let "a %= 8" # Еквівалентно let "a = a % 8"

Expr

Універсальний обробник виразів: обчислює заданий вираз (аргументи повинні відділятися пропусками). Вирази можуть бути арифметичними, логічними або рядковими.

expr 3 + 5 # поверне 8

expr 5 % 3 # поверне 2

expr 5 \* 3 # поверне 15

У арифметичних виразах, оператор множення обов'язково повинен екрануватися зворотним слешем.

A=`expr \(5 + 3 \) / 3 # (5+3) /3

y=`expr $y + 1`

Операція інкремента змінною, те ж саме, що і

let y=y+1, или y=$(($y+1)).

$((...))

У арифметичних підстановках, зворотні одиночні лапки можуть бути замінені на подвійні круглі дужки $((...)) або дуже зручною конструкцією, із застосуванням пропозиції let.

z=$(($z+3))

z=$((z+3)) # Також вірно.

Усередині подвійних круглих дужок, змінні разименовиваются автоматично.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: