В этом посте я расскажу о 11 консольных командах, которые могут упростить жизнь пользователю Linux. Эти 11 команд служат для работы с файловой системой.
1. Размер директории:
Для того чтобы узнать размер памяти занимаемой директорией служит команда:
1 | du -h -s /var/log |
Ключ -h выводит данные в удобном формате(мегабайты, гигабайты…), а -s суммирует размер всех вложенных в директорию файлов и поддиректорий.
2. Просмотр занятого и свободного места на разделах:
1 | df -h |
Вывод ее будет похож на этот:
1 2 3 4 5 6 7 8 | Filesystem Size Used Avail Use% Mounted on dev 3.9G 0 3.9G 0% /dev run 3.9G 1.2M 3.9G 1% /run /dev/sda3 34G 23G 11G 68% / tmpfs 3.9G 336K 3.9G 1% /dev/shm tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup tmpfs 3.9G 2.9M 3.9G 1% /tmp tmpfs 790M 20K 790M 1% /run/user/1000 |
Мы видим название раздела, размер процент использованного пространства и точку монтирования.
Также можно узнать информацию о том в каком разделе находится какая-либо директория:
1 | df -h /var |
1 2 | Filesystem Size Used Avail Use% Mounted on /dev/sda3 34G 23G 11G 68% / |
3. Подсчет файлов в директории.
Для этого нужно объединить две команды с помощью конвейерной обработки:
1 | ls -l /var/log | wc -l |
Вывод ls будет подан на wc, которая сосчитает строки и выдаст нам искомое число.
4. Поиск самых больших директорий.
Следующая конструкция удобна в случае, когда вы решили оптимизировать дисковое пространство и удалить большие файлы:
1 | du -k /home | sort -n | tail -10 |
5. Список самых больших файлов в директории.
Команда выведет список 10-ти самых больших файлов в текущей директории, но не будет производить поиск во вложенных директориях:
1 | ls -lSr | tail -10 |
6. Размер файлов определенного типа.
Эта конструкции покажет размер всех .log файлов в директории /var/log
1 | du -ch /var/log/*.log | grep total |
7. Поиск файлов в диапазоне размеров.
Если нужно найти файлы, допустим, в диапазоне от 10 мегабайт до 100 поможет команда:
1 | find . -type f -size +10M -size -100M -ls |
Как можно заметить, +10М задает нижнюю границу поиска, а -100М – верхнюю.
8. Список недавно измененных файлов.
Для свежеизмененных файлов подойдет конструкция:
1 | ls -larth /var/log | tail -10 |
Параметр -10 у tail определяет длину списка выводимых файлов.
9. Список давно измененных файлов.
Найти файлы, измененные более 90 дней назад поможет команда:
1 | find /var/log -mtime +90 -ls |
10. Поиск пустых файлов.
Найти файлы с размером ноль байт можно командой:
1 | find . -type f -size 0b -ls |
Или таким ее вариантом:
1 | find . -type f -empty -ls |
11. Узнать формат файла.
Для этого, как ни странно, служит команда file. Вот несколько примеров:
1 2 | file image.png image.png: PNG image data, 616 x 862, 8-bit grayscale, non-interlaced |
1 2 | file hightats.pdf hightats.pdf: PDF document, version 1.2 |
1 2 | file /dev/hda /dev/hda: block special (3/0) |