По номеру варіанта вибрати завдання і відповідно до методичних вказівок, за матеріалами рекомендованої літератури і конспекту лекцій виконати завдання і оформити звіт по роботі.
Зміст звіту
1. Початкові дані і постановка задачі.
2. Текст програми.
3. Висновки.
Методичні вказівки
Bash – командний процесор, який інтерпретує введені команди. Bash має свою внутрішню мову програмування.
Скрипт – це програма на мові shell.
Змінні
В командній мові bash всі змінні текстові. Ім’я змінної повинно починатися з букви і може полягати з латинських літер, цифр, знака підкреслювання.
Оператор присвоєння в bash має такий вигляд:
Ім’я змінної=значення.
NAME=Ivan
Якщо потрібно привласнити значення, що містить пробєл, потрібно використовувати лапки:
NAME="Ivan Ivanov"
Звернення до значення змінної виконується за допомогою знаку долара перед ім'ям змінної:
echo "$NAME"
Арифметичні операції виконуються при використанні ключового слова let
let sum=1+1
echo $sum
$((expression))
вираз обчислюватиметься відповідно до правил мови програмування С, і результат буде підставлений. Наприклад,
|
|
foo=$((((5 + 3*2) - 4) / 2))
Команда read приймає рядок зі стандартного вводу і присвоює його змінній.
read login
echo $login
$ {<var>} <текст> відділення змінних від тексту
let a=3+5
echo ${a}text
Для маніпулювання рядками приміняються спеціальні підстановки
1. $ {<var>: звідки: скільки} – выделить подстроку
txt=”abcd”
s=${txt:0,3}
echo $s
2. ${змінна:=значення} Значення присвоюється змінній, якщо вона не визначена або являється пустим рядком.
var1=”abc”
${var1:=”cde”}
${var2:=”fgh”}
echo $var1
echo $var2
3. ${змінна:+значення} Якщо змінна ініціалізована (визначена),замість неї використовується вказане в конструкції значення. (*)
var1=${a:+”text”}
echo $var1
4. ${змінна:-значення} Якщо змінна визначена і не являеться пустим рядком, підставляється її значення, інакше підставляється значення, вказане в конструкції. (*)
var1=${a:-”text”}
echo $var1
5. ${#змінна} кількість символів в значенні змінної
a=”abc”
echo ${#a}
При підстановці команд потрібно використовувати зворотні одинарні лапки (вони розташовані під символом тільди на клавіатурі). Підставляти можна не тільки одну команду, а цілі списки команд:
USERS=`who | wd –l`
UP=`date; uptime`
I=`whoami`
Для змінних встановлений рівень видимості. Змінні можуть бути глобальними і локальними.
Локальні - ті, які видно на поточному рівні роботи процесора.
Глобальні видно на всіх нижніх рівнях, тобто в під процессорах