Как определить общий размер каталога (папки) из командной строки?

Сначала вам нужно найти ключевой идентификатор добавляемого ключа. Сделайте это по команде:

sudo apt-key list

В ней будут перечислены все ключи, которые у вас есть, причем каждая запись выглядит так:

pub   1024R/B455BEF0 2010-07-29
uid                  Launchpad clicompanion-nightlies

Как только вы выяснили, какая клавиша для удаления, используйте команду sudo apt-key del <keyid>, где <keyid> заменен фактическим ключом ключа, который вы хотите удалить из вашей брелка.

$ sudo apt-key del B455BEF0
$ apt-key list | grep clicompan
$
1
задан 13 February 2014 в 15:44

10 ответов

Недавно я нашел отличный интерактивный инструмент, основанный на ncurses, который быстро дает вам обзор размеров каталогов. Поиски такого инструмента в течение многих лет.

быстро развернуть по иерархии файлов, которую вы можете удалить, например. огромные временные файлы изнутри инструмента чрезвычайно быстрые

Подумайте об этом как baobab для командной строки:

apt-get install ncdu
135
ответ дан 29 May 2018 в 12:56
  • 1
    Это абсолютно фантастично! Как DaisyDisk, для OSX – subZero 7 June 2014 в 00:58
  • 2
    Невероятный инструмент! – Ted 3 February 2015 в 07:43
  • 3
    ncdu потрясающе! После его установки просто сделайте это ncdu /. Вы очень быстро найдете самые большие файлы в системе. Также нажмите h, находясь внутри интерфейса консоли ncdu. Он имеет очень полезные ярлыки – vlad-ardelean 12 December 2017 в 20:34

Это находит размер рекурсивно и помещает его рядом с именем каждой папки вместе с общим размером внизу, все в человеческом формате

du -hsc *
40
ответ дан 29 May 2018 в 12:56

Наслаждайтесь!

du foldername

Подробнее об этой команде здесь

14
ответ дан 29 May 2018 в 12:56

tree - еще одна полезная команда для этого задания:

Просто установите его через sudo apt-get install tree и введите следующее:

tree --du -h /path/to/directory
...
...

33.7M used in 0 directories, 25 files

Из дерева man: [!d2 ]

-h    Print  the size of each file but in a more human readable way, e.g. appending a size letter for kilo‐
      bytes (K), megabytes (M), gigabytes (G), terabytes (T), petabytes (P) and exabytes (E).

--du  For each directory report its size as the accumulation of sizes of all its files and  sub-directories
      (and their files, and so on). The total amount of used space is also given in the final report (like
      the 'du -c' command.)
6
ответ дан 29 May 2018 в 12:56

Ниже приводится то, что я использую, чтобы распечатать общий объем, папку и размер файла:

$ du -sch /home/vivek/* | sort -rh

Подробности

 ------------------------------------------------------------
   -c, --total
          produce a grand total
   -h, --human-readable
          print sizes in human readable format (e.g., 1K 234M 2G)
   -s, --summarize
          display only a total for each argument
 -------------------------------------------------------------
   -h, --human-numeric-sort
          compare human readable numbers (e.g., 2K 1G)
   -r, --reverse
          reverse the result of comparisons

Выход

 70M    total
 69M    /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/lib
992K    /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/results
292K    /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/target
 52K    /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/user-files
5
ответ дан 29 May 2018 в 12:56

В ответах было очевидно, что du - это инструмент для поиска общего размера каталога. Однако есть несколько факторов, которые следует учитывать:

Иногда вывод du может вводить в заблуждение, поскольку он сообщает пространство, выделенное файловой системой, которое может отличаться от суммы размеров отдельного файлы. Как правило, файловая система будет выделять 4096 байт для файла, даже если вы сохранили в нем только один символ! Разница в выходе из-за мощности 2 и мощностью 10 единиц. Переключатель -h на du делит количество байтов на 2 ^ 10 (1024), 2 ^ 20 (1048576) и т. Д., Чтобы дать читаемый пользователем результат. Многие люди могут быть более привыкли видеть силу 10 (например, 1K = 1000, 1M = 1000000) и быть удивлены результатом.

Чтобы найти общую сумму размеров всех файлов в каталоге, в байтах, выполните:

find <dir> -ls | awk '{sum += $7} END {print sum}'

Пример:

$ du -s -B 1
255729664

$ find .  -ls | awk '{sum += $7} END {print sum}'
249008169
3
ответ дан 29 May 2018 в 12:56
  • 1
    Find-ls-awk вернет неправильное значение для больших папок # 1 . Для новых awk вы можете добавить --bignum или -M; если это не вариант, используйте find . -ls | tr -s ' '|cut -d' ' -f 7| paste -sd+ |bc # 2 . – goozez 29 June 2016 в 23:25
  • 2
    Если заданы полномочия 2, существует опция --si: «как -h», но использует полномочия 1000 не 1024 », – muru 15 December 2017 в 07:25

Только для размера каталога в читаемом формате используйте следующее:

du -hs directoryname

Это, вероятно, не в правильном разделе, но из командной строки вы можете попробовать: [!d1 ]

ls -sh filename

-s - размер, а -h доступен для человека.

Используйте -l для отображения в списке ls, как показано ниже:

[ f3]
1
ответ дан 29 May 2018 в 12:56

du /foldername - стандартная команда для определения размера папки. Лучше всего найти параметры, прочитав справочную страницу:

man du

Перед использованием команды вы должны прочитать справочную страницу (доступную в Интернете).

0
ответ дан 29 May 2018 в 12:56

Вот сценарий POSIX, который будет работать с:

Файл Файлы Каталог Каталоги
#!/bin/sh
ls -ARgo "$@" | awk '{q += $3} END {print q}'

Источник

0
ответ дан 29 May 2018 в 12:56

Лучше всего я думаю следующее:

du -h directory_name | tail -n1

Это покажет вам только размер интересующей вас директории и не будет печатать размеры любых каталогов и файлов внутри этого каталога ,

Я должен добавить, что если размер папки большой, то du занимает больше времени. Вы должны быть терпеливыми, чтобы эта команда работала. Как и любая другая команда unix, вы можете узнать общее время для этого процесса, используя time перед этой командой:

time du -h directory_name | tail -n1
-2
ответ дан 29 May 2018 в 12:56

Другие вопросы по тегам:

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