Bash Script — это текстовый файл, содержащий команды Bash. Bash — стандартный интерпретатор командной строки для операционных систем Linux и Unix. Bash Script используется для автоматического запуска команд Bash. Поэтому его можно использовать для автоматизации задач или создания простых приложений.
Файлы Bash Script — один из самых популярных и доступных способов программирования компьютера с Linux. Эти простые примеры помогут вам понять процесс и познакомят вас с основами Bash Script.
Использование Bash Script жизненно важно для управления процессами и повышения эффективности программирования. В этой статье представлен обзор набора примеров Bash Script, которые помогут вам легко изучить и понять программирование в среде Linux. Проверять Сравнение Zsh и Bash: выбор подходящей оболочки для программирования и управления текстом.
1. Как вывести Hello World на экран с помощью Bash
Пример Hello World — отличный способ изучить любой язык программирования, и Bash не является исключением.
Вот как вывести на экран «Hello World» с помощью Bash:
- Откройте текстовый редактор и начните редактировать новый файл, содержащий следующие строки кода.
- Первая строка вашего Bash-скрипта всегда должна выглядеть так:
#!/bin/bash
Заметка: Команда shebang (#!/bin/bash) необходима, поскольку Sell использует ее для определения способа запуска сценария. В данном случае используется компилятор Bash.
- Любая строка, начинающаяся с символа #, считается комментарием. Строка shebang — это особый случай, но вы можете использовать свои собственные комментарии для объяснения написанного кода. Добавьте комментарий к строке 2, например:
# Print some text from a bash script
- Вы можете вывести результат на стандартный вывод, используя команду echo, за которой следует значение, которое вы хотите напечатать. Добавьте следующее в строку 3:
echo "Hello World"
- Сохраните скрипт, желательно с расширением .sh, Например. hello_world.sh. Продление не является обязательным требованием, но это традиция, которой полезно придерживаться.
- Чтобы запустить скрипт, сделайте файл исполняемым. Используйте команду CHMOD («режим изменения») с аргументом +x («исполняемый файл») и имя сценария:
chmod +x hello_world.sh
- Используйте эту команду для запуска сценария из его каталога:
./hello_world.sh
- Когда скрипт запустится, он напечатает текст «Hello World» в окне терминала:
2. Создайте каталог, прочитав записи
С помощью Bash Script вы можете запускать любое приложение, которое обычно запускаете из командной строки. Например, вы можете создать новый каталог из сценария с помощью команды mkdir.
- Начните с той же строки, что и раньше:
#!/bin/bash
- Вы можете предложить пользователю ввести имя каталога, используя команду echo, как и раньше:
echo "Enter new directory name:"
- Используйте встроенную команду чтения для получения вводимых пользователем данных. Единственный аргумент называет переменную, в которой оболочка будет хранить входные данные:
read newdir
- Если вам нужно использовать значение, хранящееся в переменной, добавьте к ее имени символ доллара ($). Вы можете передать содержимое входной переменной в качестве аргумента команды. MkDir Чтобы создать новый каталог:
mkdir $newdir
- Когда вы запустите этот сценарий, он предложит вам ввести данные. Введите допустимое имя каталога, и вы увидите, что скрипт создаст его в вашем текущем каталоге:
3. Создайте каталог, используя аргументы командной строки.
В качестве альтернативы интерактивному чтению ввода большинство команд Linux поддерживают аргументы. Вы можете предоставить аргумент при запуске приложения, чтобы контролировать его поведение.
В сценарии вы можете использовать $1 для ссылки на специальную переменную, содержащую значение первого аргумента. $2 будет указывать на второй аргумент и так далее.
- Создайте каталог с помощью команды mkdir из предыдущего примера. Однако на этот раз используйте встроенную переменную $1:
#!/bin/bash
mkdir $1
- Запустите скрипт, на этот раз передав выбранное вами имя для нового каталога в качестве аргумента:
./arg_dir.sh Test
- Вам, вероятно, интересно, что произойдет, если вы запустите сценарий вообще без указания аргументов. Попробуйте и посмотрите. Вы должны получить сообщение об ошибке, которое начинается со слов «Использование: mkdir»:
Без каких-либо аргументов командной строки $1 будет пустым. Когда скрипт вызывает MkDir, он не передаст ему аргумент, и команда mkdir вернет эту ошибку. Чтобы этого избежать, вы можете проверить статус самостоятельно и указать более понятную ошибку:
- Как всегда, начните со строки шебанга:
#!/bin/bash
- Прежде чем вызывать mkdir, убедитесь, что первый аргумент пуст (т. е. не имеет аргумента). Вы можете сделать это, используя оператор if Собственный код Bash, который запускает код на основе условия:
if ["$1" = ""]; then
- Если первый аргумент пуст, выведите ошибку и выйдите из скрипта:
echo "Please provide a new directory name as the first argument"
exit
- Несколько странное ключевое слово «fi» («обратное если») отмечает конец оператора if в Bash:
fi
- Теперь ваш сценарий может продолжать работу, как и раньше, для обработки случая, когда аргумент существует:
mkdir $1
- Когда вы запустите новую версию скрипта, вы получите сообщение, если забудете включить аргумент:
4. Удалить файл с помощью функции Bash.
Если вы обнаружите, что повторяете один и тот же код, подумайте о том, чтобы обернуть его в функцию. Затем вы можете вызывать эту функцию, когда захотите.
Ниже приведен пример функции, удаляющей определенный файл.
- Начните со строки шебанга:
#!/bin/bash
- Определите функцию, введя ее имя, а затем пустые круглые скобки и команды внутри фигурных скобок:
del_file() {
echo "deleting $1"
rm $1
}
Затем вы можете вызвать функцию и передать имя удаляемого файла:
del_file test.txt
Когда вы вызываете функцию, она будет установлена $? Значение со статусом завершения последней выполненной команды. Статус выхода полезен для проверки ошибок; В этом примере вы можете проверить, выполнена ли команда rm Это удалось:
if [ $? -ne 0 ]; then
echo "Sorry, could not delete the file"
fi
5. Создайте базовый калькулятор для математических расчетов.
В последнем примере показан очень простой калькулятор. Когда вы его включаете, вы вводите два значения, а затем выбираете расчет, который нужно выполнить над ними.
Вот код Calc.sh:
#!/bin/bash
# Take operands as input
echo "Enter first number: "
read a
echo "Enter second number: "
read b
# Input type of operation
echo "Enter Arithmetic Operation Choice :"
echo "1. Addition"
echo "2. Subtraction"
echo "3. Multiplication"
echo "4. Division"
read choice
# calculator operations
case $choice in
1)
result=`echo $a + $b | bc`
;;
2)
result=`echo $a - $b | bc`
;;
3)
result=`echo $a \* $b | bc`
;;
4)
result=`echo "scale=2; $a / $b" | bc`
;;
esac
echo "Result: $result"
Обратите внимание на использование регистра… ESAC Он эквивалентен оператору переключения из других языков в Bash. Он позволяет вам проверить значение — в данном случае переменную выбора — в сравнении с несколькими постоянными значениями и запустить связанный код.
Этот скрипт использует команду bc Для выполнения каждого расчета. Теперь вы можете просмотреть Создайте великолепный статический веб-сайт из терминала в Linux с помощью Bashblog.