Вы находитесь на странице: 1из 24

Contents

Основы скриптов.................................................................................................................................3
Create and Execute First BASH Program:.....................................................................................................4
Use of echo command:........................................................................................................................5
Use of comment:.........................................................................................................................................6
Use of Multi-line comment:.....................................................................................................................6
Переменные в скриптах............................................................................................................................8
Command IF..............................................................................................................................................12
if-then....................................................................................................................................................12
If-else.....................................................................................................................................................13
If-elif......................................................................................................................................................14
Test............................................................................................................................................................16
for..............................................................................................................................................................18
while..........................................................................................................................................................19
while- citim fișierul rând cu rând în scriptul Bash..................................................................................19
let..............................................................................................................................................................21
expr...........................................................................................................................................................22
shift............................................................................................................................................................22
case...........................................................................................................................................................22
read...........................................................................................................................................................23
awk............................................................................................................................................................23
Use of echo command:

You can use echo command with various options. Some useful options are mentioned in the
following example. When you use ‘echo’ command without any option then a newline is added
by default. ‘-n’ option is used to print any text without new line and ‘-e’ option is used to remove
backslash characters from the output. Create a new bash file with a name, ‘echo_example.sh’
and add the following script.

#!/bin/bash
echo "Printing text with newline"
echo -n "Printing text without newline"
echo -e "\nRemoving \t backslash \t characters\n"

Run the file with bash command.

$ bash echo_example.sh
Use of comment:
‘#’ symbol is used to add single line comment in bash script. Create a new file named
‘comment_example.sh’ and add the following script with single line comment.

Use of Multi-line comment:


You can use multi line comment in bash in various ways. A simple way is shown in the
following example. Create a new bash named, ‘multiline-comment.sh’ and add the following
script. Here, ‘:’ and “ ’ ” symbols are used to add multiline comment in bash script. This
following script will calculate the square of 5.
Переменные в скриптах
Значение нашей строки в кавычках. Но на самом деле кавычки не всегда нужны. Здесь
сохраняется главный принцип bash - пробел - это специальный символ, разделитель,
поэтому если не использовать кавычки world уже будет считаться отдельной командой, по
той же причине мы не ставим пробелов перед и после знака равно.

Bash не различает типов переменных так, как языки высокого уровня, например, С++, вы
можете присвоить переменной как число, так и строку. Одинаково все это будет считаться
строкой. Оболочка поддерживает только слияние строк, для этого просто запишите имена
переменных подряд.
Command IF

if-then
If-else
If-elif
Test
test – утилита для проверки типа файла и сравнения значений. Возвращает код возврата 0
(истина) или 1 (ложь) в зависимости вычисления выражения expr. Выражения могут быть как
унарными, так и бинарными. Унарные выражения часто используются для проверки статуса
файла. Также допустимо сравнение чисел и строк.

In Bash, the test command takes one of the following syntax forms:

test EXPRESSION
[ EXPRESSION ]
[[ EXPRESSION ]]
for

for – позволяют организовывать перебор последовательностей значений.

1.

#!/bin/bash ./script
for var in first second third fourth fifth The first item
do The second item
echo The $var item The third item
done The fourth item
The fifth item
===

2.

for i in {0..3}
do
echo "Number: $i"
done

Number: 0
Number: 1
Number: 2
Number: 3
3.
for i in {0..20..5}
do
echo "Number: $i"
done
====
Number: 0
Number: 5
Number: 10
Number: 15
Number: 20

4.
for ((i = 0 ; i <= 1000 ; i++)); do
echo "Counter: $i"
done

====
Counter: 0
Counter: 1
Counter: 2
...
Counter: 998
Counter: 999
Counter: 1000

while

while– в таком цикле можно задать команду проверки некоего условия и выполнять тело цикла до
тех пор, пока проверяемое условие возвращает ноль, или сигнал успешного завершения некоей
операции. Когда условие цикла вернёт ненулевое значение, что означает ошибку, цикл
остановится.

#!/bin/bash ./script 3
var1=$1 3
while [ $var1 -gt 0 ] 2
do 1
echo $var1
var1=$[ $var1 - 1 ]
done

while- citim fișierul rând cu rând în scriptul Bash


$ cat company.txt
Samsung
Nokia
LG
iphone

1. $ while read line


do
echo $line
done < company.txt

========
Samsung
Nokia
LG
iphone

2. cat > script_while1.sh


#!/bin/bash
filename='company.txt'
n=1
while read line; do
# reading each line
echo "Line No. $n : $line"
n=$((n+1))
done < $filename

$bash script_while1.sh
Line No. 1 : Samsung
Line No. 2 : Nokia
Line No. 3 : LG
Line No. 4 : iphone

3.
4.

let
let – производит арифметические операции над переменными. В большинстве случаев, ее можно
считать упрощенным вариантом команды expr.

#!/bin/bash ./script
let a=3+12 5
expr $a / 3
expr
expr – универсальный обработчик выражений: вычисляет заданное выражение (аргументы
должны отделяться пробелами). Выражения могут быть арифметическими, логическими или
строковыми.

#!/bin/bash ./script
expr 3 + 12 15
expr 12 / 3 4

shift

case
case – конструкция case эквивалентна конструкции switch в языке C/C++. Она позволяет выполнять
тот или иной участок кода, в зависимости от результатов проверки условий. Она является, своего
рода, краткой формой записи большого количества операторов if/then/else и может быть
неплохим инструментом при создании разного рода меню.

#!/bin/bash ./script
var=b second
case $var in
"a") echo "first";;
"b") echo "second";;
"c") echo "third";;
*) echo "Default";;
esac

Un exemplu cu case:

read

read – считывает одну строку данных (текст, пользовательский ввод) из стандартного потока ввода


или присоединенного к нему файлового дескриптора в одну или более переменных, которые
перечислены как <NAME...>.

#!/bin/bash Bash script.sh


read var1 var2 ab cd
echo "var1 = $var1" var1=ab
echo "var2 = $var2" var2=cd
awk

Схема вызова awk выглядит так:


$ awk options program file

Awk воспринимает поступающие к нему данные в виде набора записей. Записи


представляют собой наборы полей. Упрощенно, если не учитывать возможности
настройки awk и говорить о некоем вполне обычном тексте, строки которого разделены
символами перевода строки, запись — это строка. Поле — это слово в строке.

With awk, you can process text files. Awk assigns some variables for each data field found:

 $0 for the whole line.


 $1 for the first field.
 $2 for the second field.
 $n for the nth field.
 $NF for the nth field.

The whitespace character like space or tab is the default separator between fields in awk.

Рассмотрим наиболее часто используемые ключи командной строки awk:


Un exemplu cu awk si concatenare fisiere:
Set

Вам также может понравиться