Показать страницуИстория страницыСсылки сюдаCopy this pageExport to MarkdownODT преобразованиеНаверх Вы загрузили старую версию документа! Сохранив её, вы создадите новую текущую версию с этим содержимым. Медиафайлы====== Bash ====== ===== Потоки вывода и файловые дескрипторы ===== * du -h 1 > ./log 2>&1 * 1 - Поток вывода * 2 - Поток ошибок * &1 - обозначает файловый дескриптор 1 ===== Конструкции ===== ===== 0-9 ===== ===== A ===== ==== Массивы ==== <code bash> array=( one two three ) files=( "/etc/passwd" "/etc/group" "/etc/hosts" ) limits=( 10, 20, 26, 39, 48) </code> ===== B ===== ===== C ===== <code> case "$1" in start) esac </code> ===== D ===== ===== E ===== ===== F ===== ==== function ==== <code bash> function f1{ # params $1 echo $1 } f1 A </code> ==== foreach ==== <code bash> for fn in `cat filenames.txt`; do echo "the next file is $fn" cat $fn done </code> <code bash> while read filename do echo "Printing: $filename" cat "$filename" done < filenames.txt </code> <code bash> for fn in cat filenames.txt; do cat "$fn"; done </code> <code bash> for i in "${arrayName[@]}" do : # do whatever on $i done </code> ===== G ===== ===== H ===== ===== I ===== === Индексы === * [@] - Ссылка на копию массива в переменной $1 * [*] - Строка * [n] * var=(1 2 3 4) * echo ${var[@]} === if === * if * Синтаксис: * if * if else <code bash> if что-то then # делать тот-то else # делать тот-то fi </code> *if []; then <code bash> if что-то; then # делать тот-то else # делать тот-то fi </code> ===== J ===== ===== K ===== ===== L ===== ===== M ===== ===== N ===== ===== O ===== ===== P ===== ===== Q ===== ===== R ===== ===== S ===== ===== T ===== * test * Параметры: * -f - Наличие файла * -d - Наличие директории * -e - * -z - Наличие данных в строке * Сокращенный вариант [] * http://www.ibm.com/developerworks/ru/library/l-bash-test/ ===== U ===== ===== V ===== ===== W ===== ===== X ===== ===== Y ===== ====== Ссылки ====== * [[http://binsh.ru/2008/12/13/bash-pitfalls-part01.html|Частые ошибки программирования на Bash (часть 1)]] * [[http://binsh.ru/2008/12/18/bash-pitfalls-part02.html|Частые ошибки программирования на Bash (часть 2)]] * [[http://binsh.ru/2008/12/22/bash-pitfalls-part03.html|Частые ошибки программирования на Bash (часть 3)]] * [[http://binsh.ru/2008/12/24/bash-pitfalls-part04.html|Частые ошибки программирования на Bash (часть 4)]] * [[http://binsh.ru/2008/12/29/bash-pitfalls-part05.html|Частые ошибки программирования на Bash (часть 5)]] * [[system:shell:bash:Перенаправление вывода|Перенаправление вывода]] * [[bash:основы_bash._часть_1|Основы BASH. Часть 1]] * [[bash:основы_bash._часть_2|Основы BASH. Часть 2.]] * http://bappoy.pp.ru/2008/12/22/bash-pitfalls-part03.html * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|Advanced Bash-Scripting Guide]] * http://habrahabr.ru/post/151771/ * [[http://linux.yaroslavl.ru/docs/conf/gnu-util/bash/bash.html|Особенности работы оболочки bash]] * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|Искусство программирования на языке сценариев командной оболочки]] * http://eddnet.org/?tag=bash ====== Видео уроки ====== * https://www.youtube.com/playlist?list=PLLyG9JTjVd9VTEKisukGLJhl8H2YeIN09 СохранитьПросмотрРазличияОтменить Сводка изменений Примечание: редактируя эту страницу, вы соглашаетесь на использование своего вклада на условиях следующей лицензии: CC0 1.0 Universal