Чтение онлайн

на главную - закладки

Жанры

Командная строка Linux
Шрифт:

Directory listing

10.1 `ls': List directory contents

==================================

The `ls' program lists information about files (of any type, including

directories). Options and file arguments can be intermixed arbitrarily, as

usual.

For non-option command-line arguments that are directories, by default `ls'

lists the contents of directories, not recursively, and omitting files with

names beginning with `.'. For other non-option arguments, by default `ls'

lists just the filename. If no non-option argument is specified, `ls' operates

on the current directory, acting as if it had been invoked with a single

argument of `.'.

By default, the output is sorted alphabetically, according to the

– -zz-Info: (coreutils.info.gz)ls invocation, 63 lines --Top----------5

Программа info

читает info– файлы, организованные в древовидную структуру, каждый из которых содержит отдельную тему. Info-файлы включают гиперссылки, с помощью которых можно перемещаться от узла к узлу. Гиперссылку можно узнать по начальному символу звездочки. Гиперссылки активируются при установке текстового курсора на них и осуществляют переход при нажатии клавиши ENTER.

Чтобы вывести info-страницу, введите команду info и добавьте после нее необязательное имя интересующей программы. В табл. 5.2 перечислены команды, которые можно использовать для управления программой во время чтения info-страницы.

Таблица 5.2. Команды программы info

Команда

Действие

?

Вывести справку

Page Up или Backspace

Вывести предыдущую страницу

Page Down или ПРОБЕЛ

Вывести следующую страницу

n

Вперед (next) — вывести следующий узел

p

Назад (previous) — вывести предыдущий узел

u

Вверх (up) — вывести узел, родительский по отношению к текущему, обычно меню

ENTER

Перейти по гиперссылке, находящейся на позиции курсора

q

Завершить (quit)

Большинство программ из числа обсуждавшихся до сих пор, является частью пакета coreutils проекта GNU, поэтому о них можно получить дополнительную информацию командой

[me@linuxbox ~]$ info coreutils

Она выведет страницу с меню, состоящим из гиперссылок на документацию для каждой программы, входящей в состав пакета coreutils.

README и другие файлы с описанием программ

Многие программные пакеты, установленные в вашей системе, включают файлы с документацией, размещаемые в каталоге /usr/share/doc. Большинство из них имеют простой текстовый формат и могут просматриваться с помощью less. Некоторые файлы имеют формат HTML и могут просматриваться с помощью веб-браузера. Можно также встретить файлы с расширением .gz. Это сжатые файлы, обработанные программой-архиватором gzip. Пакет gzip включает специальную версию less с именем zless, которая выводит содержимое текстовых файлов, сжатых архиватором gzip.

Создание собственных команд с помощью alias

А теперь проведем первый опыт по программированию! У нас

есть возможность создавать собственные команды с помощью команды alias. Но прежде чем начать, познакомимся с одной маленькой хитростью командной строки. Она позволяет уместить в одной строке несколько команд, для чего нужно просто отделить их друг от друга точкой с запятой:

команда1; команда2; команда3...

Следующий пример демонстрирует этот прием:

[me@linuxbox ~]$ cd /usr; ls; cd -

bin games kerberos lib64 local share tmp

etc include lib libexec sbin src

/home/me

[me@linuxbox ~]$

Как видите, мы поместили три команды в одну строку. Первая выполняет переход в каталог /usr, вторая выводит его содержимое, и третья осуществляет возврат в предыдущий каталог (команда cd -), поэтому по завершении мы оказываемся там же, где и были. Давайте теперь с помощью alias превратим эту последовательность в новую команду. Первое, что мы должны сделать, — придумать имя для новой команды. Пусть это будет test. Но прежде чем продолжить, хорошо бы проверить, не занято ли уже имя test. Для этого воспользуемся командой type:

[me@linuxbox ~]$ type test

test встроена в оболочку

Ой! Имя test уже занято. Попробуем foo:

[me@linuxbox ~]$ type foo

bash: type: foo: не найден

Отлично! Имя foo свободно. Теперь создадим наш псевдоним:

[me@linuxbox ~]$ alias foo='cd /usr; ls; cd -'

Обратите внимание на структуру этой команды:

alias имя='строка'

За командой alias следует имя, сразу за которым (то есть без пробелов) следует знак «равно» и строка в кавычках, описывающая действие, присваиваемое имени. После определения псевдонима его можно подставлять везде вместо команды.

Давайте попробуем:

[me@linuxbox ~]$ foo

bin games kerberos lib64 local share tmp

etc include lib libexec sbin src

/home/me

[me@linuxbox ~]$

Тип псевдонима определяется с помощью команды type:

[me@linuxbox ~]$ type foo

foo является алиасом для `cd /usr; ls; cd -'

А удаляется псевдоним с помощью команды unalias:

[me@linuxbox ~]$ unalias foo

[me@linuxbox ~]$ type foo

bash: type: foo: не найден

Несмотря на то что в этом примере мы постарались не использовать имя существующей команды, иногда это бывает полезно. Часто это делается, чтобы применить наиболее желательные параметры к каждому вызову команды. В примере, приведенном выше, мы видели, что команда ls часто определяется как псевдоним, — это позволяет реализовать вывод информации в цвете:

[me@linuxbox ~]$ type ls

ls является алиасом для `ls --color=tty'

Если вызвать команду alias без аргументов, она выведет список всех псевдонимов в окружении. Ниже приводятся несколько псевдонимов, объявляемых в дистрибутиве Fedora по умолчанию. Попробуйте понять, что они делают:

Поделиться:
Популярные книги

Лекарь Империи 5

Карелин Сергей Витальевич
5. Лекарь Империи
Фантастика:
городское фэнтези
аниме
героическая фантастика
попаданцы
5.00
рейтинг книги
Лекарь Империи 5

Адвокат Империи 8

Карелин Сергей Витальевич
8. Адвокат империи
Фантастика:
городское фэнтези
альтернативная история
аниме
дорама
фантастика: прочее
попаданцы
5.00
рейтинг книги
Адвокат Империи 8

Фишер. По следу зверя. Настоящая история серийного убийцы

Рогоза Александр
Реальные истории
Документальная литература:
истории из жизни
биографии и мемуары
5.00
рейтинг книги
Фишер. По следу зверя. Настоящая история серийного убийцы

Вперед в прошлое 4

Ратманов Денис
4. Вперед в прошлое
Фантастика:
попаданцы
5.00
рейтинг книги
Вперед в прошлое 4

Рассвет русского царства 3

Грехов Тимофей
3. Новая Русь
Фантастика:
историческое фэнтези
альтернативная история
5.00
рейтинг книги
Рассвет русского царства 3

Инженер Петра Великого 4

Гросов Виктор
4. Инженер Петра Великого
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Инженер Петра Великого 4

Стеллар. Трибут

Прокофьев Роман Юрьевич
2. Стеллар
Фантастика:
боевая фантастика
рпг
8.75
рейтинг книги
Стеллар. Трибут

Идеальный мир для Лекаря 3

Сапфир Олег
3. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 3

Хозяин Теней 6

Петров Максим Николаевич
6. Безбожник
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Хозяин Теней 6

Брат мужа

Зайцева Мария
Любовные романы:
5.00
рейтинг книги
Брат мужа

Дважды одаренный. Том VI

Тарс Элиан
6. Дважды одаренный
Фантастика:
аниме
альтернативная история
фэнтези
фантастика: прочее
5.00
рейтинг книги
Дважды одаренный. Том VI

Инженер Петра Великого 5

Гросов Виктор
5. Инженер Петра Великого
Фантастика:
попаданцы
альтернативная история
фэнтези
4.75
рейтинг книги
Инженер Петра Великого 5

Виконт. Книга 2. Обретение силы

Юллем Евгений
2. Псевдоним `Испанец`
Фантастика:
боевая фантастика
попаданцы
рпг
7.10
рейтинг книги
Виконт. Книга 2. Обретение силы

Личный аптекарь императора. Том 6

Карелин Сергей Витальевич
6. Личный аптекарь императора
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Личный аптекарь императора. Том 6