Командная строка Linux. Полное руководство - [7]

Шрифт
Интервал

Параметры и аргументы


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

>команда -параметры аргументы

Большинство команд используют параметры, состоящие из одного символа, которому предшествует дефис, например: -l. Но многие команды, в том числе команды из проекта GNU, поддерживают параметры с длинными именами, состоящие из слова, которому предшествуют два дефиса. Кроме того, многие команды позволяют объединять вместе параметры с короткими именами. В следующем примере команде ls передаются два параметра: параметр l, требующий использовать длинный (long) формат вывода, и параметр t, требующий сортировать результаты по времени (time) изменения:

>[me@linuxbox ~]$ ls -lt

Добавим параметр с длинным именем --reverse, чтобы изменить порядок сортировки на обратный:

>[me@linuxbox ~]$ ls -lt --reverse

Команда ls имеет огромное число допустимых параметров. Наиболее популярные из них перечислены в табл. 3.1.

Таблица 3.1. Наиболее популярные параметры команды ls

Параметр

Длинный параметр

Описание

-a

--all

Список всех (all) файлов, даже с именами, начинающимися с точки, которые обычно не выводятся (то есть скрытых)

-d

--directory

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

-F

--classify

Добавляет в конец каждого имени символ-индикатор (например, прямой слеш, если это имя каталога)

-h

--human-readable

При использовании длинного формата вывода отображает размеры файлов не в байтах, а в величинах с единицами измерения

-l

Выводит результаты с использованием длинного формата

-r

--reverse

Выводит результаты в обратном порядке. Обычно коман­да ls выводит результаты в алфавитном порядке

-S

Сортировать результаты по размеру (size)

-t

Сортировать результаты по времени (time) последнего изменения


Пристальный взгляд на длинный формат


Как было показано выше, параметр -l заставляет команду ls выводить результаты с использованием длинного формата. Этот формат предусматривает вывод большого количества полезной информации. Ниже приводится пример вывода содержимого каталога Examples в системе Ubuntu:

>-rw-r--r-- 1 root root 3576296 2012-04-03 11:05 Experience ubuntu.ogg

>-rw-r--r-- 1 root root 1186219 2012-04-03 11:05 kubuntu-leaflet.png

>-rw-r--r-- 1 root root 47584 2012-04-03 11:05 logo-Edubuntu.png

>-rw-r--r-- 1 root root 44355 2012-04-03 11:05 logo-Kubuntu.png

>-rw-r--r-- 1 root root 34391 2012-04-03 11:05 logo-Ubuntu.png

>-rw-r--r-- 1 root root 32059 2012-04-03 11:05 oo-cd-cover.odf

>-rw-r--r-- 1 root root 159744 2012-04-03 11:05 oo-derivatives.doc

>-rw-r--r-- 1 root root 27837 2012-04-03 11:05 oo-maxwell.odt

>-rw-r--r-- 1 root root 98816 2012-04-03 11:05 oo-trig.xls

>-rw-r--r-- 1 root root 453764 2012-04-03 11:05 oo-welcome.odt

>-rw-r--r-- 1 root root 358374 2012-04-03 11:05 ubuntu Sax.ogg

Рассмотрим различные поля для одного из файлов и их назначение (табл. 3.2).

Таблица 3.2. Поля длинного формата вывода команды ls

Поле

Назначение

-rw-r-r--

Права доступа к файлу. Первый символ указывает тип файла. Например, символом дефиса обозначаются обычные файлы, а символом d — каталоги. Следующие три символа сообщают о правах доступа для владельца файла, следующие три — для членов группы, которой принадлежит файл, и последние три — для всех остальных. Более полное обсуждение прав доступа приводится в главе 9

1

Число жестких ссылок на файл. Подробнее о ссылках рассказывается в конце этой главы

root

Имя пользователя, владеющего файлом

root

Имя группы, владеющей файлом

32059

Размер файла в байтах

2012-04-03 11:05

Дата и время последнего изменения файла

oo-cd-cover.odf

Имя файла


Определение типов файлов командой file


Занимаясь исследованием системы, полезно иметь возможность определять тип содержимого файлов. В этом нам поможет команда file. Как отмечалось выше, имена файлов в Linux не обязаны отражать тип содержимого файлов. Например, увидев имя файла picture.jpg, можно предположить, что он содержит изображение в формате JPEG, но в Linux такие предположения могут не оправдываться. Вызвать команду file можно так:

>file имя_файла

Команда file выводит краткое описание содержимого файла. Например:

>[me@linuxbox ~]$ file picture.jpg

>picture.jpg: JPEG image data, JFIF standard 1.01

Существует множество разных типов файлов. Одна из известных идей в Unix-подобных системах, таких как Linux, гласит: «Все сущее есть файл». По мере чтения книги вы убедитесь в истинности этого утверждения.

Типы многих файлов в вашей системе будут вам знакомы, например файлы MP3 и JPEG, но иногда будут попадаться файлы с малоизвестными и даже странными типами.

Просмотр содержимого файлов командой less


Команда less — это программа для просмотра текстовых файлов. В системе Linux присутствует множество файлов, содержащих обычный, удобочитаемый текст. Программа less предоставляет удобный способ исследовать их содержимое.