Перевод команды Linux stat (1) в команду BSD stat (1)

paste file1 file2 | while IFS="$(printf '\t')" read -r f1 f2; do echo $f1";"$(echo $f2|cut -d";" -f2) ;done

Таким образом вы получите желаемый результат из ваших файлов. Пригодность для других форматов может потребовать дополнительной работы, такой как пропущенные строки, несортированные файлы и т. Д.

0
09.04.2019, 20:05
1 ответ
stat -f 0%i%HT%HT%HT%HT%a%m%z /

во FreeBSD должен быть очень похож на

stat --printf %W%i%F%F%F%F%X%Y%s /

в Linux, за исключением того, что %HTбудет расширяться до Directoryвместо directory, как %Fв Linux.

Я просто вставил 0вместо%W(время рождения ), поскольку в большинстве систем Linux это будет0(неизвестно ). Замените 0на %B, если вам действительно нужно время рождения.

Этот формат довольно странный, и я не понимаю его назначения; Я думаю, его можно заменить любым «уникальным» мусором на основе метаданных файла;-)


I thought that the gstat utility in coreutils is the GNU version of stat, but I turned out to be wrong; they are two different commands.

gstatво FreeBSD — это другая программа (/usr/sbin/gstat, gstat(8)). Вы ищетеgnustat:

gnustat --printf %W%i%F%F%F%F%X%Y%s /

Как и в случае с любым другим пакетом, pkg info -l coreutils | grep statсообщит вам о файлах, установленных пакетом coreutils.

5
28.01.2020, 02:18

Теги

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