Со следующей командой я смог перечислить все каталоги относительно текущего каталога наряду со временем эпохи, в последний раз измененным:
find . -exec stat -c '%n: %Y' {} \;
вывод выглядит примерно так:
.: 1569247414
./a_file.txt: 1561624333
./some_folder: 1561624645
./some_folder/some_file.txt: 1561624645
./some_folder/another_file.txt: 1536557809
Как я пошел бы об избавлении от ". /" появляющийся в начале каждой записи, и добавляют '/', если это - каталог?
В качестве награды избавление от первой записи '.', которая является просто текущей папкой, было бы хорошо.
Удачи
-mindepth 1
для избавлений от .
, который является глубиной == 0 find *
вместо find .
-type d ... -or -type f ...
+
вместо \;
для отправки нескольких файлов в [1 110]; это может обработать его и будет намного быстрее! find * \
-type d -exec stat -c '%n/: %Y' {} + \
-or -type f -exec stat -c '%n: %Y' {} +
<час> , НО...
Вам не нужно -exec stat
вообще!
find
bultin -printf
с для печати даты последнего изменения (%Cs
был бы эквивалент [1 115] %Y
). -printf '%P'
вместо [1 118] также позволит Вам избавиться от [1 119] в начале каждого имени файла. find . -mindepth 1 \
-type d -printf '%P/: %Cs\n' \
-or -type f -printf '%P: %Cs\n'
<час> Вывод:
a_file.txt: 1561624333
some_folder/: 1561624645
some_folder/some_file.txt: 1561624645
some_folder/another_file.txt: 1536557809