Как я изменяю метки времени папки рекурсивно?

На Windows XP можно также записать: runas /user:machine\administrator "explorer.exe /separate

где Вы заменяете машиной с фактическим названием машины или доменным именем и администратором с любой учетной записью администратора.

На Vista не работает этот прием, с тех пор / отдельный коммутатор не поддерживается больше. Можно все еще использовать RUNAS, но необходимо знать фактический путь к исполняемому файлу.

0
задан 3 September 2010 в 00:20
2 ответа

Используя TOUCH можно изменить метка времени файла или папка:

touch -t 1004180052 folder #(YYMMDDhhmm)

Опции, которые можно хотеть знать:

-r, --reference=FILE
    use this file's times instead of current time 
-t STAMP
    use [[CC]YY]MMDDhhmm[.ss] instead of current time 

С-r можно указать файл для получения метки времени от, или можно использовать-t для установки его сами.

если Вы, чтобы выполнить его против всех файлов в dir и использовании последнее обновление обновление файла Ваша папка ls была бы лучшая альтернатива:

touch -r "`ls -1tA /path/to/folder | head -n 1`" /path/to/folder
1
ответ дан 4 December 2019 в 15:10

Смотрит на меня как, необходимо будет сделать сценарий (оболочка или Perl или что бы то ни было, но лично я использовал бы Perl) проанализировать вывод ls-laF, управляют и затем вызывают сенсорную команду. В псевдокоде, который посмотрел бы loosey как это:

while (`ls -laF $folder`)
{
  $tmp = echo $_ | awk '{print $6 $7}'
  if $tmp > $date { $date = $tmp}
}
touch $date $folder

Снова, это - псевдокод. Ее предназначенный для демонстрации идеи, что я думаю в течение 5 минут. Не ожидайте, что вышеупомянутое будет подобно коду, который Вы заканчиваете тем, что произвели.

Надежда, которая помогает.

1
ответ дан 4 December 2019 в 15:10

Теги

Похожие вопросы