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

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

Жанры

Linux: Полное руководство

Аллен Питер В.

Шрифт:

pdksh public domain Korn shell, общедоступная оболочка Корна;

sash stand-alone shell, автономная оболочка, может быть использована в случае, когда программные библиотеки недоступны.

Список всех установленных в системе программ-оболочек находится в файле

/etc/shells
. У меня он выглядит так:

/bin/sh

/bin/bash

/sbin/nologin # это "оболочка" для тех,

#
кому запрещен вход в систему

/bin/ash

/bin/bsh

/bin/ksh

/usr/bin/ksh

/usr/bin/pdksh

/bin/tcsh

/bin/csh

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

/etc/passwd
:

$ grep den /etc/passwd # выбрать из файла строки,

# содержащие подстроку den

den:x:501:501:Denis:/home/den:/bin/bash

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

exit
. В начальной оболочке эта команда завершает сеанс работы.

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

По умолчанию новому пользователю назначается оболочка bash. Это прекрасная оболочка, включающая много усовершенствований и лучших свойств других ободочек, и менять ее я не рекомендую. В дальнейшем, говоря «оболочка», я буду иметь в виду именно bash.

3.4.1. Встроенные команды

Список встроенных команд оболочки bash можно получить по команде help или найти на man-странице в секции SHELL BUILTIN COMMANDS. Напоминаю, что поиск в выводе команды man выполняется командой

/<образец><Ввод>
, а поиск следующего вхождения образца — по нажатии клавиши <n>.

Справку по команде, имя которой вы знаете, можно получить командой

help <имя>
.

Вот несколько полезных встроенных команд:

♦ 

alias <псевдоним> <длинная команда с аргументами>
— назначение псевдонима. Без аргументов выводит список всех имеющихся псевдонимов. Обратите внимание, что у пользователя root команда rm сделана псевдонимом для «
rm -i
», чтобы он не забыл воспользоваться ключом -i (см.п.2.1.4.3). Вы тоже можете назначить псевдоним для опасной команды risk, создав сценарий, который сначала будет спрашивать «а вы уверены?», и только при положительном ответе запускать risk на выполнение. Дайте этому сценарию имя risk, а внутри него
ссылайтесь на настоящую команду risk по ее полному пути. Удалить псевдоним из списка можно командой
unalias.

♦ 

echo [аргументы]
— вывод аргументов на экран. Полезно, если нужно выполнить подстановку (п.3.4.4) и посмотреть, что получится.

♦ 

enable <имя_команды>
— заставляет оболочку вместо встроенной команды выполнить исполняемый файл с таким же именем. Полезно, если у вас есть собственный сценарий по имени, например, echo.

♦ 

eval [аргументы]
— конструирование команды на лету, из указанных аргументов, и отправка ее на выполнение.

♦ 

let <переменная>=<арифметическое выражение>
— вычисление выражений. Так, команда var= 1 + 2 присвоит переменной var (см. п.3.4.3) значение «1 + 2», а команда let var=1+2 — значение «3».

♦ 

source <файл>
— прочитать и выполнить команды, содержащиеся в файле. Применяется для определения пользовательских переменных и функций (п.3.4.3).

Другие встроенные команды служат инструкциями командного языка bash.

3.4.2. История команд

Оболочка предлагает вам много возможностей для облегчения ввода команд и редактирования командной строки. Помимо функции автозаполнения, с которой вы познакомились в п.1.1.4.7, bash содержит механизм командной истории. Суть его в том, что вводимые вами команды (по умолчанию 1000) запоминаются и доступны для повторного вызова — без изменений или с ними.

Команда

history
без аргументов выводит всю историю, нумеруя при этом команды в порядке их ввода.

Если вас интересуют только последние несколько команд:

$ history 23 # показать последние 23 команды

Если вас интересуют все команды, имеющие отношение к монтированию каталога

public
:

$ history | grep mount | grep public

# еще один пример конвейера

Номера команд выводятся для того, чтобы вы могли снова ввести эту команду, набрав

$ ! <номер>

или

$ !! # запускает последнюю из введенных команд

или

$ !<первые_буквы> # запускает последнюю из команд,

# начинающихся с этих букв.

Стрелки «вверх» и «вниз» перемещают по командной истории, не отправляя команду на выполнение, а вводя ее в командную строку для редактирования.

Последнюю команду может для вас отредактировать сама оболочка. Для этого вместо команды введите:

$ ^что_заменить^чем_заменить

Например, вы запросили справку по команде оболочке bash:

man bash
. Если сразу после этого вы хотите посмотреть справку по оболочке csh, можете вместо
man csh
набрать

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

Отмороженный

Гарцевич Евгений Александрович
1. Отмороженный
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Отмороженный

Лейтенант космического флота

Борчанинов Геннадий
1. Звезды на погонах
Фантастика:
боевая фантастика
космическая фантастика
космоопера
рпг
фэнтези
фантастика: прочее
5.00
рейтинг книги
Лейтенант космического флота

Древесный маг Орловского княжества 4

Павлов Игорь Васильевич
4. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Древесный маг Орловского княжества 4

Вечный. Книга V

Рокотов Алексей
5. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга V

Отщепенец

Ермоленков Алексей
1. Отщепенец
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Отщепенец

Ярар. Начало

Грехов Тимофей
1. Ярар
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Ярар. Начало

Я снова князь. Книга XXIII

Дрейк Сириус
23. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я снова князь. Книга XXIII

Как я строил магическую империю 2

Зубов Константин
2. Как я строил магическую империю
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Как я строил магическую империю 2

Третий Генерал: Тома I-II

Зот Бакалавр
1. Третий Генерал
Фантастика:
городское фэнтези
попаданцы
аниме
сказочная фантастика
5.00
рейтинг книги
Третий Генерал: Тома I-II

"Дальние горизонты. Дух". Компиляция. Книги 1-25

Усманов Хайдарали
Собрание сочинений
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Дальние горизонты. Дух. Компиляция. Книги 1-25

Бастард Бога (Дилогия)

Матвеев Владимир
Фантастика:
альтернативная история
5.11
рейтинг книги
Бастард Бога (Дилогия)

Принадлежать им

Зайцева Мария
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Принадлежать им

Черный Маг Императора 13

Герда Александр
13. Черный маг императора
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Черный Маг Императора 13

Владыка морей ч.1

Чайка Дмитрий
10. Третий Рим
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Владыка морей ч.1