У меня есть папка, в которой огромное количество файлов. Мне надо было из нее вытащит и запаковать только те, у которых дата новее 01.01.2009.
При выполнии:
Код: Выделить всё
tar -c -f newer-file.tar --newer 20090101 files

Код: Выделить всё
tar -c -f newer-file.tar --newer 20090101 files
Ну вот сколько времени, вам совесть позволит, заставлять других, читать ЗА ВАС manыartem-ka писал(а):Подскажите, пожалуйста, что я делаю не так.
man tar писал(а):The --newer and --newer-mtime switches accept a variety of common date
and time specifications, including ``12 Mar 2005 7:14:29pm'',
``2005-03-12 19:14'', ``5 minutes ago'', and ``19:14 PST May 1''.
Вот не поверите, и ман читал, и к TAR на сайт ходил их доку читать... про кавычки я там находил, ставил, форматы даты\времени вставлял, как они рекомендуют, ну не работает ни в какую. Все имеющиеся файлы пакует...f_andrey писал(а):Ну вот сколько времени, вам совесть позволит, заставлять других, читать ЗА ВАС manыartem-ka писал(а):Подскажите, пожалуйста, что я делаю не так.
man tar писал(а):The --newer and --newer-mtime switches accept a variety of common date
and time specifications, including ``12 Mar 2005 7:14:29pm'',
``2005-03-12 19:14'', ``5 minutes ago'', and ``19:14 PST May 1''.
на сайт GNU tar? тогда это была документация по archivers/gtar, а не /usr/bin/tar.artem-ka писал(а):и к TAR на сайт ходил их доку читать...
Код: Выделить всё
> ls -lah testdytfuguhjb/
total 88184
drwxr-xr-x 2 andrey wheel 512B 6 фев 20:29 .
drwxr-xr-x 94 andrey wheel 6,0K 6 фев 20:46 ..
-rw-r--r-- 1 andrey wheel 2,5M 11 ноя 2009 song30.ogg
-rw-r--r-- 1 andrey wheel 2,3M 11 ноя 2009 song31.ogg
-rw-r--r-- 1 andrey wheel 2,1M 11 ноя 2009 song32.ogg
-rw-r--r-- 1 andrey wheel 3,1M 11 ноя 2009 song33.ogg
-rw-r--r-- 1 andrey wheel 4,8M 11 ноя 2009 song34.ogg
-rw-r--r-- 1 andrey wheel 6,9M 11 ноя 2009 song35.ogg
-rw-r--r-- 1 andrey wheel 5,0M 11 ноя 2009 song36.ogg
-rw-r--r-- 1 andrey wheel 13M 11 ноя 2009 song37.ogg
-rw-r--r-- 1 andrey wheel 5,6M 11 ноя 2009 song38.ogg
-rw-r--r-- 1 andrey wheel 5,7M 11 ноя 2009 song39.ogg
-rw-r--r-- 1 andrey wheel 3,4M 6 фев 20:29 song40.ogg
-rw-r--r-- 1 andrey wheel 8,0M 6 фев 20:29 song41.ogg
-rw-r--r-- 1 andrey wheel 6,4M 6 фев 20:29 song42.ogg
-rw-r--r-- 1 andrey wheel 6,5M 6 фев 20:29 song43.ogg
-rw-r--r-- 1 andrey wheel 4,4M 6 фев 20:29 song44.ogg
-rw-r--r-- 1 andrey wheel 5,8M 6 фев 20:29 songty.ogg
> tar -c -f newer-file.tar --newer-than="testdytfuguhjb/song40.ogg" testdytfuguhjb/*
> tar -tvf newer-file.tar
-rw-r--r-- 0 andrey wheel 2636244 11 ноя 2009 testdytfuguhjb/song30.ogg
-rw-r--r-- 0 andrey wheel 2381018 11 ноя 2009 testdytfuguhjb/song31.ogg
-rw-r--r-- 0 andrey wheel 2253880 11 ноя 2009 testdytfuguhjb/song32.ogg
-rw-r--r-- 0 andrey wheel 3238559 11 ноя 2009 testdytfuguhjb/song33.ogg
-rw-r--r-- 0 andrey wheel 5062603 11 ноя 2009 testdytfuguhjb/song34.ogg
-rw-r--r-- 0 andrey wheel 7191264 11 ноя 2009 testdytfuguhjb/song35.ogg
-rw-r--r-- 0 andrey wheel 5197630 11 ноя 2009 testdytfuguhjb/song36.ogg
-rw-r--r-- 0 andrey wheel 13937255 11 ноя 2009 testdytfuguhjb/song37.ogg
-rw-r--r-- 0 andrey wheel 5860681 11 ноя 2009 testdytfuguhjb/song38.ogg
-rw-r--r-- 0 andrey wheel 5954997 11 ноя 2009 testdytfuguhjb/song39.ogg
-rw-r--r-- 0 andrey wheel 6045645 6 фев 20:29 testdytfuguhjb/songty.ogg
потому что -exec tar ... {} \; будет запускать tar на каждом файле. Тут не только быстродействие пострадает, но и заархивируется только последний файл. Если же поменять на -exec tar ... {} +, то упремся в ARG_MAX.snorlov писал(а):find ... -exec tar ... {} \;
Интересно, это можно считать за баг?.. ведь в мане это опция указана, а значит должна нормально обрабатываться и работать...Гость писал(а):у меня со временем как раз нет проблем в bsdtar, но есть проблемы со временем в gnutar.
--newer 20090130 в bsdtar игнорит папки со старой датой, а gnutar нулевой эффект, даже с --newer-mtime=yesterday никакой реакции.