Как я могу, например, перечислить пять самых больших файлов в/usr/lib - каталог?

Взгляните на rsnapshot, который является оберткой жемчуга вокруг rsync утилита командной строки. Rsnapshot добавляет дополнительный слой конфигурации к rsync, который делает возрастающие резервные копии легкими. (Более старые версии файла трудно связаны с текущей версией, когда они неизменны. Таким образом, каждая возрастающая версия Вашей поддержанной файловой системы похожа на полную копию.)

Другая подобная возможность является двуличностью, которая вместо этого является на основе librsync. Я понимаю, что это имеет более полируемый UI, но я не использовал его. Или rdiff-резервное-копирование, которое я думаю, от того же разработчика, или во всяком случае который был однажды верен.

Существуют, конечно, партии и много систем резервного копирования. Вот список, доступных на FreeBSD, большинство которых также будет доступно на Linux. Но я думаю три, которые я упомянул выше, естественные, чтобы рассмотреть, привыкли ли Вы к rsync. (Замечательный инструмент.)

0
19.11.2013, 16:55
2 ответа

Самое легкое должно было бы просто отсортировать по размеру и распечатать последние 5 строк:

ls -Sr /usr/lib | tail -n 5

От man ls:

   -r, --reverse
          reverse order while sorting
   -S     sort by file size

tail просто печатает последние строки N файла:

   -n, --lines=K
          output the last K lines, instead of the last 10; or use -n +K to
          output lines starting with the Kth

Если Вы также хотите проверить на файлы в подкаталогах, Вы могли бы сделать это:

find /usr/lib -type f -ls | sort -gk7 | tail -n 5

find команда ищет файлы, от man find:

   -type c
          File is of type c:
          [ ... ]
          f      regular file
   -ls    True;  list  current file in ls -dils format on standard output.
          The block counts are of 1K blocks, unless the environment  vari‐
          able  POSIXLY_CORRECT  is set, in which case 512-byte blocks are
          used.  See the UNUSUAL FILENAMES section for  information  about
          how unusual characters in filenames are handled.

sort делает то, что Вы ожидали бы, это сортирует свой вход. От man sort:

   -g, --general-numeric-sort
          compare according to general numerical value
   -k, --key=KEYDEF
          sort via a key; KEYDEF gives location and type

Так, вид -g делает это видом в числовом порядке и -k7 делает это видом на 7-м поле который, в случае find -ls, размер файла.

Это должно быть относительно устойчиво и не иметь никаких проблем с именами файлов с пробелами или странными символами. В любом случае, так как Вы перерываете /usr/lib маловероятно, что у Вас будут странные имена файлов.

4
28.01.2020, 02:28
  • 1
    хорошо благодарит Вас, но Вы могли дать мне некоторое объяснение, таким образом, я мог исследовать далее? –  cash 15.11.2013, 16:27
  • 2
    благодарности я знаю, какие трубопроводы делают, но например что действительно выслеживает-n 5 средства и делает точно? –  cash 15.11.2013, 16:28
  • 3
    @cash видит обновленный ответ. –  terdon♦ 15.11.2013, 16:30
  • 4
    @cash пожалуйста. Если это отвечает на Ваш вопрос, отметьте его, как принято, таким образом, вопрос может быть отмечен, как отвечено. –  terdon♦ 15.11.2013, 16:32

ls-lSr | хвост-5
Это будет работать

- r для реверса-l для длинного списка-S является опцией отсортировать мудрый размер файла.

-1
28.01.2020, 02:28

Теги

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