Содержимое страницы «Users/mininajulia/pr3».

 ~+'''Команда du'''+~ 

Команда '''du''' позволяет задействовать одноименную утилиту, предназначенную для вывода информации об объеме дискового пространства, занятого файлами и директориями. Она принимает путь к элементу файловой системы и выводит информацию о количестве байт дискового пространства или блоков диска, задействованных для его хранения.

Базовый синтаксис команды выглядит следующим образом:


||$ du [параметр] [путь-к-элементу-файловой-системы-1] [...]||


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

- Параметр '''-h''' позволяет выводить числовые значения занятого дискового пространства в килобайтах (K), мегабайтах (M) и гигабайтах (G), а не в количестве блоков диска, как это происходит по умолчанию. Параметр -a позволяет выводить информацию не только о размерах директорий, но и о размерах хранящихся в них файлов. 

- Параметр '''-s''' напротив позволяет выводить лишь информацию об общем объеме директории без вывода информации об объемах ее элементов. 

- Параметр '''-с''' позволяет выводить информацию об общем объеме всех отображенных элементов файловой системы. 

- Кроме того, существуют такие параметры, как параметр '''--time''', позволяющий выводить метки времени модификации файлов или директорий и параметр '''--exclude=<шаблон>''', позволяющий исключать файлы с соответствующими шаблону именами.


~+'''Примеры использования'''+~ 



'''Получение информации об объеме директории'''

1. Для получения информации об объеме директории, а также всех ее поддиректорий может использоваться команда '''du''' без каких-либо параметров — главное передать путь к интересующей директории:

||$ du /home/alexfc/bakfile/ ||

В результате будет получен аналогичный вывод:

||8348    /home/alexfc/nolf228/other||
||9184    /home/alexfc/nolf228/ ||

2. Очевидно, что объемы поддиректорий даны в количестве блоков диска. Для того, чтобы получить объемы директорий в килобайтах и мегабайтах следует использовать параметр '''-h''':

||$ du -h /home/alexfc/bakfile/ ||

Теперь будет получен более читаемый вывод:

||8,2M    /home/alexfc/nolf228/other||
||9,0M    /home/alexfc/nolf228/ ||

3. Для получения лишь общего объема директории следует добавить параметр '''-s''':

||$ du -hs /home/alexfc/bakfile/ ||

Вывод будет содержать единственную строку:

||9,0M    /home/alexfc/nolf228/ ||

4. Если же требуется получить информацию обо всех хранящихся в директориях файлах, нужно использовать параметр '''-a''':

|| $ du -ha /home/alexfc/bakfile/ ||

Вывод будет выглядеть аналогичным образом:

||380K    /home/alexfc/nolf228/splash1280.jpg||
||188K    /home/alexfc/nolf228/nolf228.jpg||
||264K    /home/alexfc/nolf228/splash1024.jpg||
||8,2M    /home/alexfc/nolf228/other/Better_Red_Than_Dead.rar||
||8,2M    /home/alexfc/nolf228/other||
||9,0M    /home/alexfc/nolf228/ ||

5. Для вывода общего объема следует использовать параметр '''-c''':

|| $ du -hс /home/alexfc/bakfile/ ||

Теперь в выводе появится дополнительная строка «итого»:

||8,2M    /home/alexfc/nolf228/other||
||9,0M    /home/alexfc/nolf228/||
||9,0M    итого ||

6. В том случае, если нужно скрыть информацию о файлах с определенными именами, может использоваться параметр '''--exclude=<шаблон>'''. Например, данная команда позволяет скрыть информацию обо всех графических файлах с расширением .jpg:

||$ du -ha --exclude="*.jpg" /home/alexfc/nolf228/ ||

Вывод не будет содержать информации о файлах с упомянутым расширением, но будет содержать информацию о файлах со всеми другими расширениями, а также обо всех директориях. При этом объем директорий будет приведен в соответствие со списком отображаемых файлов :

||8,2M    /home/alexfc/nolf228/other/Better_Red_Than_Dead.rar||
||8,2M    /home/alexfc/nolf228/other||
||8,2M    /home/alexfc/nolf228/ ||