find
Ищет файлы-каталоги по именам. Классная команда. Обычно ею не умеют пользоваться.
Синтаксис использования: find откуда_искать что_искать
Примеры использования:
find . -name ‘*bmp’ Найти относительно текущего каталога все файлы, оканчивающиеся на bmp (рисунки то бишь)
find / -name ‘*bak’ Найти по всей системе файлы резервных копий
find / -сtime -1 Найти в системе файлы, изменённые в последние сутки
find / -size +1024k Найти файлы, размером больше 1 мегабайта
find . -type d Найти все поддиректории, которые вложены в текущую директорию.
Частые приёмы использования с другими командами:
find . -size -2048k -exec rm -f {} \; Уничтожить все файлы относительно текущей директории, которые имеют размер менее 2-х мегабайт (например, почистить директорию с музыкой от мусора и недокачанных файлов)
grep
Выбирает из потока информации строки, в которых есть совпадения. Часто используется для поиска внутри файлов (даже рекурсивно). Если не указан файл, ждёт информации со входа, через вертикальную черту. Иначе обидится и повиснет. 🙂
Синтаксис использования: grep [ключи] [имя_файла]
Примеры использования:
grep -rn maska * Найти рекурсивно во всех файлах и каталогах строки со словом maska и указать номера строк и имена файлов.
grep -i -e ‘one’ -e ‘two’ filename Вывести строки из файла filename, в которых есть слова one и/или two, независимо от регистра (большие-маленькие).
grep -v ‘^$’ filename Вывести всё содержимое файла, исключая пустые строки
grep ‘^[^#]’ filename Вывести содержимое файла, исключая пустые строки и строки комментариев
grep -q karamba filename && echo Yes || echo No Сказать Yes, если в файле filename присутствует слово karamba или No в противном случае.
ln
Создаёт симлинки (ссылки) на каталоги и файлы. Это полезно, если файл лежит в одном месте, а доступ к нему хочется иметь в разных местах. С первого раза может это казаться излишним, но огромное число системных связок в линуксе работают именно так. Выглядит, как файл маленького размера, но если прочитать его – выведется содержимое файла, на который он ссылается.
Синтаксис использования: ln [ключи] файл_откуда линк_куда
Примеры использования:
ln -s /dev/ttyS0 /dev/ttyS1 Делает линк с /dev/ttyS0 как файл с именем ttyS1
ln -s libname.so.1.1 /usr/lib/libname.so Делает укороченное второе имя для библиотеки. (Именно так, по укороченным именам софты находят нужные библиотеки).
tar
Архиватор. Этим всё сказано.
Синтаксис использования: tar ключи имя_файла_архива [имена архивируемых объектов]
Примеры использования:
tar xzf archive.tar.gz Распаковать файл архива tar.gz
tar czf archive.tar.gz file1 file2 Сжать два файла в архив
tar cf archive.tar file1 directory1 Собрать без сжатия файлы и директории в один файл
tar xjf archive.tar.bz2 Распаковать файл архива tar.bz2
tar cjf archive.tar.bz2 * Сжать все файлы и каталоги в текущей директории в архив .tar.bz2
Примечание: .tar.gz и .tgz – это одно и то же. .tar.bz2 и .tbz – это тоже одно и то же. bz2 сжимает лучше, чем gz
cat
Показывает содержимое указанного файла.
Синтаксис: cat имя_файла
Примеры:
cat filename Выводит на консоль содержимое файла filename
cat directory/filename Выводит на консоль содержимое файла filename, который находится в поддиректории directory
ls
Показывает содержимое текущего каталога. При наличии параметра пытается отобразить файлы, подпадающие под этот параметр, либо каталоги, перечисленные в параметрах.
Синтаксис использования: ls [маска или путь]
Примеры использования:
ls * (показать все файлы)
ls directory (отобразить содержимое директории directory)
Самые частые ключи для использования:
ls -l Показать список файлов со всеми их атрибутами (время, права, владельцы). Этот ключ часто доступен как алиас ll (две буквы l подряд).
ls -t Показать, отсортировав по времени – сначала самые новые файлы
ls -a Показать все файлы, даже скрытые, начинающиеся на точку