Привет!
Хочу поудалять файлы. Для этого использую find и file. Первый чтобы отобрать файлы по времени, второй - по типу (т.е. чтобы не смотреть на расширение).
Делаю это примерно так:
find /dir -mtime -3 -exec file '{}' \; | grep something | awk -F':' '{print $1}' | xargs -l rm
Естественно, оно не работает, т.к. есть пробелы в именах. Я знаю про опцию -0 и соответствующую опцию -print0 у find'а.
Но их использовать нет возможности, т.к. между find'ом и xargs'ом есть другие команды. Они жалуются на нулевые символы в stdin.
Шо делать?
P.S. Давно надо текстовый фарш выхлопа стандартных утилит отнести на помойку истории и заменить объектами!
P.P.S. Да, решение, конечно, найдется, но каждый раз искать бубен под частные случаи как-то не круто.