Bash

Потоки вывода и файловые дескрипторы

du -h 1 > ./log 2>&1

1 - Поток вывода

2 - Поток ошибок

&1 - обозначает файловый дескриптор 1

Конструкции

0-9

A

Массивы

array=( one two three ) files=( "/etc/passwd" "/etc/group" "/etc/hosts" ) limits=( 10, 20, 26, 39, 48)

B

C

case

синтаксис:

case in

case "$1" in
start)
esac

D

E

F

function

function f1{ # params $1 echo $1 } f1 A

foreach

for fn in `cat filenames.txt`; do echo "the next file is $fn" cat $fn done
while read filename do echo "Printing: $filename" cat "$filename" done < filenames.txt
for fn in cat filenames.txt; do cat "$fn"; done
for i in "${arrayName[@]}" do : # do whatever on $i done

G

H

I

Индексы

[@] - Ссылка на копию массива в переменной $1

[*] - Строка

[n]

var=(1 2 3 4)

echo ${var[@]}

if

if

Синтаксис:

if

if else

if что-то then # делать тот-то else # делать тот-то fi

if []; then

if что-то; then # делать тот-то else # делать тот-то fi

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

Ссылки

Частые ошибки программирования на Bash (часть 1)

Частые ошибки программирования на Bash (часть 2)

Перенаправление вывода

Программирование

Основы BASH. Часть 1

Основы BASH. Часть 2.

http://bappoy.pp.ru/2008/12/22/bash-pitfalls-part03.html

Advanced Bash-Scripting Guide

http://habrahabr.ru/post/151771/

Особенности работы оболочки bash

Искусство программирования на языке сценариев командной оболочки

http://eddnet.org/?tag=bash

Видео уроки

https://www.youtube.com/playlist?list=PL7B7FA4E693D8E790