LINUX.ORG.RU

Программа на shell


0

0

Напиал прорамму на shell, чтобы она обнуляла логи. Но она не работает, выдаёт только содержание католога /var/log. Но я знаю , что такая конструкция должна работать , т.к. испытывал её на одном из файлов, файл обнулился. Пробывал писать её прямо в терминале, выдаёт ambiguous redirect , т.е. неясное перенаправление. В чём проблема?

Сама программа: #!/bin/bash LOG=`find /var/log/ -name "*" -print` echo -n > $LOG

anonymous

Ошибка связане с тем, что в переменную LOG попадает несколько значений (через перевод строки), вот bash и не знает куда перенаправлять вывод, о чем честно и говорит!

Можно написать, например, так:

find /var/log/ -type f | while read LOG; do >$LOG; done

Behemoth
()

find /var/log -exec  dd if=/dev/zero of={} count=0 \;
:-)

murla
()

find /var/log -exec dd if=/dev/null of={} \;

:-))

anonymous
()

rm -rf /dev/log ln -s /dev/null /var/log

и никаких скриптов ;)

oduvan
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.