LINUX.ORG.RU

Передача данных от find в tar


0

0

Здравствуйте.

Подскажите, пожалуйста, как сделать архив из файлов, которые менялись последнюю неделю? Я попробовал find . -ctime -7 | xargs tar... и так далее... Все бы ничего, но на именах с пробелами и специальными символами спотыкается. Помогите пожалуйста? Поубивать бы этих пользователей, которые умудряются несмотря на запреты лепить специальные символы в имена файлов. :(

Спасибо!

а может действительно поубивать?.. там --print0 опция -- она не годится?

dilmah ★★★★★
()

ну можно примерно так :
sasha@as255:~/temp$ touch 'long name 1'
sasha@as255:~/temp$ touch 'long name 2'
sasha@as255:~/temp$ touch 'long name 3'
sasha@as255:~/temp$ ls -l
итого 0
-rw-r--r--    1 sasha    users           0 Фев 18 09:18 long\ name\ 1
-rw-r--r--    1 sasha    users           0 Фев 18 09:18 long\ name\ 2
-rw-r--r--    1 sasha    users           0 Фев 18 09:18 long\ name\ 3
sasha@as255:~/temp$ find . -name l\* -exec echo '"{}"'  \; | xargs tar cvf aaa.tar
./long name 1
./long name 2
./long name 3
sasha@as255:~/temp$ tar tvf aaa.tar
-rw-r--r-- sasha/users       0 2003-02-18 09:18 ./long name 1
-rw-r--r-- sasha/users       0 2003-02-18 09:18 ./long name 2
-rw-r--r-- sasha/users       0 2003-02-18 09:18 ./long name 3
sasha@as255:~/temp$

sasha999 ★★★★
()

имена с пробелами это так.. Вот у меня есть пара имен что если сделать find /dir | rev то рев сегментэйшен фолт дает..

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