Есть сервак под 2003 виндой, на нём установлен cygwin. На cygwin'не запускается следующий скрипт: mkdir /tmp/noerror err=/tmp/noerror/SX_errors_`date "+%m%d%H%M"`\.txt for arg in `ls` do grep -v error\#: $arg | grep -v 'Error <' > /tmp/noerror/$arg echo $arg >> $err awk '{ i = index($0, "error#:"); a = index($0, "Error <"); if (a) { print substr($0,index($0,":")+1,19) "| " substr($0,index($0,"Error <")+7) } if (i) { var = substr($0,index($0,":")+1); if (match(var, 123)) { tim = strftime("%Y.%m.%d_%H:%M:%S| ", substr(var, 0, 10)); print tim substr($0,i+7) } else { tmp = substr(var, 0, 19); if (match(tmp, 200)) { print tmp "| " substr($0,i+7) } else { tmp=" . . _ . . | "; print tmp substr($0,i+7) } } } }' $arg | sort -t\| +1 >> $errПроблема в том что когда я в ручную запускаю скрипт он всё правильно отрабатывает. Но когда он запускается через crontab, то awk не отрабатывает! в логах crontab пишет: Input file specified two times. Не пойму из за чего awk не работает из под crontab'a? Или проблема в том что файлы передаются awk через цыкл?
|