В Unix (Tru64), как заставить ls
команду показать размер файла в мегабайтах? В настоящее время я могу показать его в байтах, используя следующее:
ls -la
command-line
unix
ls
mega
phuclv
источник
источник
ls --block-size=M
печатает размеры в мегабайтах, но показывает 1 МБ также для всего, что меньше 1 МБ. Я не уверен, что эта опция приемлема в вашей UNIX-версии ls.На самом деле
ls -lh
также печатает размеры в гигабайтах, если файл достаточно большой (ну в любом случае: в Linux 64bit это работает:>)На боковом узле:
du -sh *
печатает также размеры каталога в текущем каталоге.источник
ls -h
становится бессмысленным после того, какwhile true ; do ls -al --block-size=M ; sleep 1 ; done
Вам придется использовать,
awk
чтобы сделать математику для вас:Это не повлияет на вывод для файлов, которые меньше, чем
mega
.Возможно, вам придется настроить номер поля в соответствии с тем, как вы
ls
выложены. Вы можете изменитьmega
на «1000000», если это ваше предпочтение.Это напечатает больше десятичных разрядов, чем вы, вероятно, хотите. Вы могли бы реализовать функцию округления.
источник
ls -lh
илиls --block-size=M
, но AWK очень полезен!попробуйте
ls -shR
рекурсивный читабельный формат.источник
-h
на Tru64 , и сделал это в течение двух лет, прежде чем этот ответ был опубликован.попробуй
ls -lash
, он печатает размеры в удобочитаемом форматеисточник
du -sm filename.txt
источник
Вы также можете ввести
При этом будут перечислены все папки в текущем каталоге в удобочитаемом формате, включая более привычные размеры файлов в килобайтах, мб, гб.
источник
Если вам нужен только размер определенного файла, тогда команда, тривиальная экстраполяция предыдущих ответов, выглядит так:
-s
предназначен для размера, аh
для человека удобочитаем (как упоминалось выше несколько раз).Вывод будет выглядеть так:
Если вы пропустите имя файла (ов), он перечислит каталог, поместив размер каждого файла рядом с его именем - в отличие от того, что
ls -la
происходит, когда вызывается без аргументов имени файла.Надеюсь это поможет.
источник
-h
опция не существует вls
этой системе.Для
--block-size
параметра:MB
для 10 ^ 6M
для 2 ^ 20источник
1MB
, что выше 0 кБ, но не больше 1 МБ, будет показано как . По этой причине я нашелls -l --block-size=kB
более полезным.Если вас просто интересует размер файла, и вам не нужно использовать
ls
команду, попробуйте следующее:Это напечатает размер файла без необходимости разбора чего-либо.
источник