Но при передаче параметров в grep, нужно чтоб не передавалась корневая директория.
examples man find говорит
"find /tmp -name core -type f -print0 | xargs -0 /bin/rm -f
Find files named core IN or BELOW the directory /tmp and delete them"
почему моя команда
"find /home/alex/Документы" находит и IN и BELOW и саму эту директорию, понятно, что найдя удалит.
Видимо, что-то неправильно в регэкспе.
$ find /tmp -name "*qutim*" -print
/tmp/qutim_temp.gl2452
/tmp/qtsingleapp-qutim-ba33-3e8-lockfile
/tmp/qutim_temp.Dq2452
/tmp/qutim_temp.SE2452
/tmp/qutim_temp.aH2452
/tmp/qtsingleapp-qutim-ba33-3e8
/tmp/1/qutim1
/tmp/1/qutim1/qutim2
/tmp/qutim_temp.QV2452
/tmp не выводится и не передается никуда.
Если нужна какая-то сложная логика, можно результат find отдавать не в конвейер grep | xargs, а в awk-овый скрипт, например.
Или вообще написать все на перле:
http://perldoc.perl.org/File/Find.htmlА вообще, что требуется-то?
Может, проще сделать так (см. ниже)?
Создать чистую юзерскую директорию, закатать ее в архив tar.gz - сделать, так сказать, шаблон.
При уходе юзера удалять вообще все, что он наваял, командой rm -rf, разворачивать чистый шаблон, и менять владельца файлов на этого юзера (chown).