С помощью каких символов можно заменить команду test
?
- Команду test нельзя заменить символами
- {}
- ()
- []
Сопоставьте команды с выполняемыми функциями
[ -d bar ] | Проверка существования директории bar |
[ -e bar ] | Проверка существования файла bar |
[ 'bar' = $bar ] | Сравнение строки bar и значения переменной bar |
[ ЦЕЛОЕ1 -lt $bar ] | ЦЕЛОЕ1 меньше $bar |
[ ЦЕЛОЕ1 -gt $bar ] | ЦЕЛОЕ1 больше $bar |
[ ЦЕЛОЕ1 -eq $bar ] | ЦЕЛОЕ1 равно $bar |
[ ЦЕЛОЕ1 -ne $bar ] | ЦЕЛОЕ1 не равно $bar |
[СТРОКА1 = СТРОКА2] | Строки совпадают |
[СТРОКА1 != СТРОКА2] | Строки не совпадают |
В результате выполнения скрипта
#!/bin/bash
count=11
if [ $count -ge 42 ]
then
echo "Достаточно."
else
echo "Мало."
fi
на экран будет выведено
- Достаточно.
- Мало.
#!/bin/bash
a=3
b=4
if [ $a -lt $b ]
then
let c=b-a
else
let c=a+b
fi
echo $c
Какое число будет выведено на экран в результате выполнения скрипта?
Ответ: 1
Необходимо вывести все целые числа в порядке от 10 до 1.
for i in {10..1}; do echo $i; done;
Нужно завершить цикл while
, как только $i
превысит 11.
#!/bin/bash
i=1
while [ $i -le 11 ]
do
let i=i+1
done
Нужно завершить цикл until
, как только j
станет меньше 3.
#!/bin/bash
j=9
until [ $j -lt 3 ]
do
let j=j-1
done
Вычислите сумму ряда чисел от a до b. Например, от 1 до 10:
sum = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 +10
Числа a и b будут переданы строкой на stdin
, и разделены пробелом. Ответ необходимо вывести в stdout
. Вызов встроенных командных оболочек из скрипта невозможен.
#!/bin/bash
read -r a b # Читаем переменные, переданные на стандартный ввод
let sum=0
for i in `seq $a $b`
do
let sum=sum+i;
done
echo $sum;