Условные операторы

Условные операторы предоставляют Вам возможность решить, выполнять действие или нет; решение принимается при вычислении значения выражения.

( Читать дальше )

Переменные

Вы можете использовать переменные таким же образом, что и в любом языке программирования. Типы данных отсутствуют. Переменная в bash может представлять собой число, символ или строку символов.

Вам не следует объявлять переменную. В действительности, присвоение значения на её указатель уже создаёт её.

( Читать дальше )

Конвейеры

Данный раздел объясняет достаточно простым и практичным способом, каким образом следует использовать конвейеры и для чего Вам это может потребоваться.

( Читать дальше )

Всё о перенаправлении

Теория и быстрый просмотр

Существуют 3 файловых дескриптора: stdin — cтандартный ввод, stdout — стандартный вывод и stderr — стандартный поток ошибок.

Ваши основные возможности:

1. перенаправлять stdout в файл
2. перенаправлять stderr в файл
3. перенаправлять stdout в stderr
4. перенаправлять stderr в stdout
5. перенаправлять stderr и stdout в файл
6. перенаправлять stderr и stdout в stdout
7. перенаправлять stderr и stdout в stderr

1 означает stdout, а 2 — stderr.

( Читать дальше )

Простейшие скрипты

В данном HOW-TO осуществляется попытка предоставить Вам некоторые рекомендации по shell-программированию, основанные только на примерах.

В данном разделе Вы обнаружите небольшие скрипты, которые, вероятно, будут Вам полезны при освоении некоторых приёмов.

Традиционный скрипт «hello world»

#!/bin/bash          
    	echo Hello World!
    	


Данный скрипт содержит только две строки. Первая сообщает системе о том, какая программа используется для запуска файла.

Вторая строка — это единственное действие, выполняемое данным скриптом, печатающее 'Hello world' на терминале.

Если Вы получите что-то типа ./hello.sh: Command not found., то, возможно, первая строка '#!/bin/bash' неправильная; запустите whereis bash или посмотрите finding bash, чтобы выяснить, какой должна быть эта строка.

Простой скрипт резервного копирования


    	        #!/bin/bash          
    	tar -cZf /var/my-backup.tgz /home/me/
    	


В данном скрипте вместо печати сообщения на терминале мы создаём tar-архив пользовательского домашнего каталога. Скрипт НЕ предназначен для практического применения. Далее в данном документе будет представлен более эффективный скрипт резервного копирования.