Дата отображается в часовом поясе локальной системы на момент создания.
напр. мой раздел /boot - это ext4 на рейде -1 (/dev/md0 ), созданный, когда я заменил свои загрузочные диски на 4 SSD и преобразовал их в root на ZFS в прошлом году. Я сохранил раздел /boot ext4 на случай чрезвычайной ситуации.
# tune2fs -l /dev/md0 | sed -n -e 's/.*created\:\s*//gp'
Sat Oct 8 16:38:45 2016
# TZ=UTC tune2fs -l /dev/md0 | sed -n -e 's/.*created\:\s*//gp'
Sat Oct 8 05:38:45 2016
Я тоже на восточном побережье Австралии (Мельбурн ), и разница между 16 :38 и 05 :38 составляет 11 часов, что правильно для AEDT (летнего времени. начинается в октябре для тех штатов, которые его соблюдают)
Кстати, почти никогда не требуется направлять вывод grep в sed или awk. оба уже могут выполнять сопоставление шаблонов регулярных выражений.пример awk может выглядеть так:
# tune2fs -l /dev/md0 | awk -F': +' '/created/ {print $2}'
Sat Oct 8 16:38:45 2016
Это должно сработать, (предполагая, что все каталоги в текущей папке являются каталогами A ***):
cp -r --parents */H* destination/
Вам, очевидно, следует заменить destination/
вашей фактической целью.
Если ваш pax
поддерживает опцию -0
(, а ваш find
— предикат -print0
):
find. -path '*/H*' -print0 | pax -0rwpe /dest/dir/
Скопирует все файлы и каталоги, /H
находящиеся на их пути.
Если это не так, но вы можете гарантировать, что пути к файлам не содержат символов новой строки, вы можете удалить обе 0
в приведенной выше команде.