Некоторые кандидаты включают следующее. Время файла отображается в метаданных, а mdls
— это «м эта д ата л я с т». При использовании с опцией -raw
выходные данные mdls
содержат поля, разделенные символом NUL. например. следующее.
# The creation date which should not change.
mdls -raw -name kMDItemFSCreationDate $filename
Команда stat
ведет себя иначе. Ниже приведены результаты четырех версий двух оболочек с использованием команды stat -f $filename
.
/usr/local/bin/zsh
(5.7.1 через Homebrew )производит stat: missing file descriptor
. /usr/local/bin/bash
(5.0.2 (1 )через Homebrew )производит testing.txt
. /bin/zsh
(5.3, входящая в состав macOS ), создает stat: missing file descriptor
. /bin/bash
(3.2.57 (1 )включение в macOS производит testing.txt
. Однако при использовании полного пути к stat
команда завершается ожидаемым образом в каждой версии обеих оболочек. Ниже приведен пример, который дает все времена, найденные с помощью stat
.
/usr/bin/stat -f "Access (atime): %Sa%nModify (mtime): %Sm%nChange (ctime): %Sc%nBirth (Btime): %SB" testing.txt
Команда выдает результат, подобный приведенному выше результату приведенной выше команды.
Access (atime): Feb 21 10:46:41 2019
Modify (mtime): Feb 21 10:46:21 2019
Change (ctime): Feb 21 10:46:21 2019
Birth (Btime): Feb 21 10:22:17 2019
Это был интересный вопрос, и я надеюсь получить больше информации о причине несоответствия.
objdump
, по крайней мере, в большинстве систем Linux, является частью GNU Binutils , что, вероятно, объясняет то, что вы слышали. Это инструменты, которые позволяют манипулировать объектными файлами, то есть результатом компиляции исходных модулей :, их создания (с помощью as
), объединения их вместе (с помощью ld
), их дампа (с использованием objdump
), сборка библиотек из них (с использованиемar
)и т. д. Они также включают инструменты, которые манипулируют исполняемыми файлами в более широком смысле. Я склонен рассматривать их как «все необходимое для поддержки библиотеки C и компилятора C».
Команды, включенные в этот проект, являются частью Binutils, а другие — нет.
Помимо этого, я не думаю, что существует какое-либо универсальное, согласованное -различие между инструментами и утилитами.