3.3. Управление файлами

Если вы новичок в Linux, названия файлов могут показаться вам странными. Файлы в Linux могут иметь расширения, которых вы ранее не встречали, могут иметь не одно расширение, или не иметь его вовсе. Имена файлов могут начинаться с символа «.», а также могут включать другие символы, в том числе пробелы.

3.3.1. Определение типов файлов

Ниже представлены наиболее распространенные типы файлов и соответствующие им расширения.

3.3.1.1. Сжатые и архивные файлы

  • .bz2 — файл, сжатый при помощи bzip2

  • .gz — файл, сжатый при помощи gzip

  • .tar — файл, заархивированный при помощи tar (сокращение от tape archive), также известный как tar файл

  • .tbz — файл, заархивированный tar и сжатый bzip

  • .tgz — файл, заархивированный tar и сжатый gzip

  • .zip — файл, сжатый при помощи алгоритма сжатия ZIP, обычно используемого приложениями MS-DOS. Для Linux более привычен алгоритм сжатия gzip, так что архивы .zip в Linux достаточно редки

Более подробную информацию об этих типах файлов вы найдете в Гл. 5, Сжатие и архивирование файлов.

3.3.1.2. Форматы файлов

  • .au — аудиофайл

  • .gif — изображение формата GIF

  • .html/.htm — HTML-файл

  • .jpg — изображение формата JPEG

  • .pdf — документ в электронном виде; PDF расшифровывается как Portable Document Format (формат переносимых документов)

  • .png — изображение формата PNG (сокращение от Portable Network Graphic — переносимая сетевая графика)

  • .ps — файл PostScript; формат для печати

  • .txt — обычный текстовый файл ASCII

  • .wav — аудиофайл

  • .xpm — файл изображения

3.3.1.3. Системные файлы

  • .conf  — конфигурационный файл. Конфигурационные файлы часто имеют также расширение .cfg

  • .lock  — файл блокировки; отмечает программу или устройство как уже используемое

  • .rpm  — файл менеджера пакетов Red Hat Package Manager, используемый для установки программного обеспечения

3.3.1.4. Файлы программ и скриптов

  • .c  — файл с исходным текстом программы, написанной на языке С

  • .cpp  — файл с исходным текстом программы, написанной на языке C++

  • .h  — заголовочный (так называемый header) файл для программы, написанной на языке C или C++

  • .o  — объектный файл

  • .pl  — Perl-скрипт

  • .py — Python-скрипт

  • .so  — файл библиотеки

  • .sh — shell-скрипт

  • .tcl  — TCL-скрипт

3.3.1.5. Определение типа файла

Расширения файлов используются не всегда и часто используются неверно. Что делать, если файл не имеет расширения или оно не соответствует типу файла?

В этом случае может быть полезна команда file.

Например, вам попался файл с названием example без расширения. Используя команду file, вы сможете увидеть тип файла:

file example 
example: ASCII text

Из этого примера видно, что файл example является текстовым. Любой файл, распознанный как текстовый, может быть прочитан при помощи команд cat, more или less или открыт при помощи текстовых редакторов, например, gedit или vi.

Чтобы больше узнать о команде file, прочтите ее man-страницу, набрав в командной строке man file.

3.3.2. Имена файлов

3.3.2.1. Скрытые файлы

Файлы, название которых начинается с точки, называются скрытыми файлами или «dot» файлами. Увидеть такие файлы можно и с помощью графического файлового менеджера, такого как Наутилус, и из оболочки командной строки. В Наутилусе выберите Вид (View)->Показывать скрытые файлы (Show Hidden Files). В командной строке воспользуйтесь для просмотра содержимого каталога командой ls -al. Просматривая скрытые файлы в своем домашнем каталоге, вы можете удивиться их количеству. Эти скрытые файлы обычно бывают конфигурационными файлами приложений. Их прячут, чтобы предотвратить их случайное изменение и не загромождать окно просмотра домашнего каталога.

3.3.2.2. Пробелы в именах файлов

Хотя имена файлов в Linux и могут содержать пробелы, управление такими файлами из командной строки может вызвать некоторые затруднения. Командная строка воспринимает пробел как разделитель между именами файлов или командами и может неверно истолковать такие имена. При совершении действий над файлами, содержащими в имени пробелы, такие имена файлов заключаются в кавычки.

3.3.2.3. Символы в именах файлов

Имена файлов могут содержать знаки пунктуации. Однако имейте в виду, что эти специальные знаки имеют в командной строке специальное назначение и их использование может вызвать ошибку. Обычно рекомендуется не использовать в именах файлов специальные символы. Если вы все же решили включить в имя файла какой-то специальный символ, при совершении действий над таким файлом необходимо заключить его имя в кавычки.

Существуют специальные символы, которые не могут входить в имя файла. Например, нельзя включить в имя файла символ «/», потому что так обозначается каталог. Нельзя назвать файл «.», поскольку так обозначается текущий каталог, или «..», поскольку так обозначается каталог, расположенный на уровень выше текущего.

3.3.2.4. Файлы с несколькими расширениями

Имена файлов могут иметь несколько расширений. Знак «.» может находиться в середине имени файла и не являться границей между собственно именем и расширением, или же файл действительно может иметь не одно расширение. Несколько расширений может появиться в результате применения к файлу нескольких программ или команд. Чаще всего это происходит при сжатии файлов. Подробно о сжатии и архивировании файлов рассказано в Гл. 5, Сжатие и архивирование файлов.