find /tmp -printf '%s %p\n' |sort -n -r | head
Эта команда работает нормально, но какие %s %p
параметры используются здесь? Есть ли другие варианты, которые можно использовать?
find /tmp -printf '%s %p\n' |sort -n -r | head
Эта команда работает нормально, но какие %s %p
параметры используются здесь? Есть ли другие варианты, которые можно использовать?
Ответы:
Какие параметры% s% p используются здесь?
Со страницы руководства :
% s Размер файла в байтах.
% p Имя файла.
Прокрутите вниз на этой странице за пределы всех обычных букв для printf и прочитайте части, которые идут с префиксом%.
% n Количество жестких ссылок на файл.
% p Имя файла.
% P Имя файла с именем начальной точки, под которой оно было найдено, удалено.
% s Размер файла в байтах.
% t Время последнего изменения файла в формате, возвращаемом функцией C `ctime '.
Есть ли другие варианты, которые можно использовать?
Есть. Смотрите ссылку на справочную страницу.
Барретт 2012 говорит на странице 74:
-printf
string
msgstr " напечатать заданную строку, к которой могут быть применены подстановки, в виде функции библиотеки C printf()
".
и рекомендует, конечно, справочную страницу для полного списка опций. В то время как такие вещи find . -printf '%s %p\n'
получают объяснение, другие нет. @jim
упомянул использование %T
. Я лично использую сценарий со строкой, похожей на find . -printf '%T@ %p\n'
ту, что я никогда не смог понять, что это %T@
такое. Кто-нибудь может сослаться на поясняющий источник для этих опций, не найденных в manpages?