Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
LIST=`find /svn/ -type d 2>/dev/null| awk '{FS="/"} {print $4}'| sort|uniq | tr '\n' ' '`
for ONE_OF_LIST in $LIST
do
svnadmin hotcopy /svn/$ONE_OF_LIST /svn/temp4backup/$ONE_OF_LIST
done$ echo "/1/2/3/4/5/6" | awk '{FS="/"} {print $4}'find /svn/ -mindepth 4 -maxdepth 4 -type d | while read ONE_OF_LIST; do
...
doneВ bash(как и многих других оболочках) есть встроенные файловые дескрипторы: 0 (stdin), 1 (stdin), 2 (stderr).
Больше похоже на деление.let "c = a / b" #умножение
По умолчанию stderr не должен выводится в на консоль(писаться в stderr)Мне кажется, что это неверно, да ещё и с опечаткой. stderr вроде как в консоль и пишется по умолчанию, но отдельно от stdout.
Это, я думаю, более правильно делать как-то так:LIST=`find /svn/ -type d 2>/dev/null| awk '{FS="/"} {print $4}'| sort|uniq | tr '\n' ' '`
for ONE_OF_LIST in $LIST
do
...
done
find /svn/ -type d 2>/dev/null| awk '{FS="/"} {print $4}'| sort|uniq | while read ONE_OF_LIST
do
...
done
ARG1 | ARG2
ARG1 if it is neither null nor 0, otherwise ARG2
ARG1 < ARG2
ARG1 is less than ARG2
ARG1 <= ARG2
ARG1 is less than or equal to ARG2
STRING : REGEXP
anchored pattern match of REGEXP in STRING
Спасибо за Ваши статьи! Жаль, что цикл прекратился. Остались не раскрытыми темы функций, массивов и подстановок.
Если кому-то интересно, о них можно узнать в простом самоучителе по программированию на Bash.
Основы BASH. Часть 2