ls-команда: как отобразить размер файла в мегабайтах?

В Unix (Tru64), как я делаю ls управляйте показывают размер файла в мегабайтах? В настоящее время я могу показать его в байтах с помощью следующего:

ls -la
161
задан 09.11.2018, 18:36

5 ответов

Возможно, -h достаточно для Вас:

- h
При использовании с-l опцией используйте суффиксы единицы: Байт, Килобайт, Мегабайт, Гигабайт, Терабайт и Петабайт для сокращения количества цифр к трем или меньше основам использования 2 для размеров.

ls -lah

Общие рекомендации: Использовать man commandname прочитать руководство/справку определенной команды, например, здесь man ls.

247
ответ дан 07.12.2019, 07:44

ls --block-size=M печатает размеры в Мегабайтах, но показывает 1 МБ также для чего-либо ниже 1 МБ. Я не уверен, если эта опция приемлема в Вашей версии UNIX ls, все же.

На самом деле ls -lh также размеры печати в Гигабайтах, если файл является достаточно большим (Хорошо так или иначе: на Linux 64 бита это действительно работает:>)

На узле стороны: du -sh * печать также размеры каталога в текущем каталоге.

32
ответ дан 07.12.2019, 07:44

Необходимо будет использовать awk сделать математику для Вас:

ls -l | awk 'BEGIN{mega=1048576} $5 >= mega {$5 = $5/mega "MB"} {print}'

Это не будет влиять на вывод для файлов, которые меньше, чем mega.

Вы, возможно, должны скорректировать полевое число для соответствия пути Ваш ls размечается. Можно измениться mega к "1000000", если это - Ваше предпочтение.

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

15
ответ дан 07.12.2019, 07:44

попробовать ls -lash, это печатает размеры в человекочитаемом формате

8
ответ дан 07.12.2019, 07:44

du -sm filename.txt

5
ответ дан 07.12.2019, 07:44

Теги

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