1 авг. 2008 г.

Полезные советы

Дописывание при помощи клавиши [Tab]


Дописывание при помощи клавиши [Tab] — один из наиболее полезных приемов при работе в командной строке. Linux обладает способностью «угадывать», какую команду, каталог или имя файла вы вводите. Если вы введете первые несколько букв имени файла, команды или пути и затем нажмете клавишу [Tab], bash покажет оставшуюся часть имени файла или пути, или компьютер подаст звуковой сигнал (если в вашей системе настроен звук). Услышав звуковой сигнал, нажмите клавишу [Tab] еще раз для получения списка файлов или путей, имена которых начинаются с заданных букв.
Например, если вы забыли команду updatedb, но помните часть команды, вы можете набрать команду su -, чтобы стать root'ом, и использовать следующую конструкцию. В командной строке наберите up и дважды нажмите клавишу [Tab]. Вы увидите список возможных окончаний, включающий updatedb и uptime. Набрав часть команды upd и снова нажав клавишу [Tab], вы получите полную команду.
Закончив выполнять работу, для которой вы стали root'ом, наберите в командной строке exit — вы вернетесь в свою сессию.

История выполненных команд


Нет необходимости набирать одну и ту же команду снова и снова. Командная строка запоминает последние введенные вами команды. Они откладываются в файле .bash_history в домашнем каталоге каждого пользователя. Если вы вводили только часть команды и не завершали ввод нажатием клавиши [Enter], такая команда не сохранится в истории команд.
Чтобы просмотреть введенные ранее команды, используйте клавиши со стрелками [Вверх] и [Вниз]. Кроме того, в поиске ранее использовавшейся команды вам поможет сочетание клавиш [Ctrl]-[R]: нажмите [Ctrl]-[R], а затем введите начальные буквы ранее использовавшейся команды. На экран будет выведена последняя введенная вами команда, содержащая в названии искомое сочетание.
По умолчанию в Scientific Linux в истории командной строки откладывается 1000 команд. Для каждой командной строки история команд сохраняется отдельно.
Чтобы просмотреть историю команд, введите в командной строке команду history. Чтобы найти команду в файле истории, воспользуйтесь командой history в сочетании с командой grep (обратитесь к Разд. 4.14.3, Команда grep). Например, вам необходимо найти команду вида emacs -fn -*-*-medium-r-*-*-13-*-*-*-*-*-iso10646-1. Вы использовали команду ранее и предполагаете, что она может быть в файле истории. Наберите в командной строке:
history | grep emacs
Чтобы очистить историю команд, наберите в командной строке history -c.

[Ctrl]-[Z] и запуск процесса в фоновом режиме

Приложения и процессы могут быть запущены из командной строки. При этом стандартный вывод оболочки командной строки будет занят до тех пор, пока приложение не будет закрыто. На экран будут выводиться системные сообщения, которые в большинстве случаев можно игнорировать. Чтобы иметь возможность продолжать использовать такую оболочку командной строки, введите после команды, запускающей приложение, символ «&». Например, команда oowriter & запустит приложение OpenOffice.org Writer и позволит вам продолжать вводить команды в командной строке. Это называется запуском процесса в фоновом режиме.
Если вы забыли нажать после команды, запускающей приложение, символ «&», воспользуйтесь сочетанием клавиш [Ctrl]-[Z] — это приостановит работу приложения. Чтобы продолжить работу приложения без вывода информации на экран, наберите bg и нажмите клавишу [Enter] — приложение продолжит работу в фоновом режиме.

Знаки подстановки и регулярные выражения


Что делать, если вы не помните полное имя файла, который необходимо найти? Используя знаки подстановки или регулярные выражения, можно производить действия над файлом или файлами, не зная их полного имени. Просто напишите то, что вы помните из имени файла, а оставшееся замените знаками подстановки. Знаки подстановки — это специальные символы, которыми вы можете заменить буквы, цифры и символы, что позволит значительно уменьшить объем работы при поисках нужного каталога или файла и сделает необязательным исследование многочисленных каталогов.
[Tip]Подсказка
Чтобы узнать больше о знаках подстановки и регулярных выражениях, почитайте man-страницу bash (введите в командной строке man bash). Не забудьте, что вы можете сохранить вывод в текстовый файл, перенаправив вывод: man bash | col -b > bash.txt. А затем можно открыть и прочитать файл при помощи команды less или редактора vi (для этого введите vi bash.txt). Если вы хотите распечатать файл, имейте в виду, что он очень длинный.
Для поиска файла с названием «example1.txt» введите:
ls exam*.txt
Будет показано имя файла:
example1.txt
Регулярное выражение может оказаться необходимым, когда, например, звездочка сама является частью имени файла.
Обратная косая черта «\» (еще говорят backslash, бэкслэш) перед звездочкой указывает, что надо найти не всё, а только файл, в названии которого содержится звездочка.
Если искомый файл называется examplе*.txt, введите, например:
ls \*.txt
Ниже приведен краткий список знаков подстановки и регулярных выражений:
  • * — соответствует любому количеству любых символов (возможно и 0)
  • ? — соответствует одному любому символу
  • \* — соответствует символу *
  • \? — соответствует символу ?
  • \) — соответствует символу )

Комбинации клавиш

Существует несколько полезных комбинаций клавиш, используемых при работе в оболочке командной строки.

Комбинация клавишДействие
[Ctrl]-[K]При редактировании команды в командной строке эта комбинация удаляет все введенные символы от курсора до конца строки.
[Ctrl]-[D]Единичное нажатие этой комбинации завершит текущее приложение или процесс. Двойное нажатие закроет оболочку командной строки.
[Ctrl]-[R]Используется для поиска команды в истории командной строки (набирается эта комбинация и затем начальные буквы искомой команды).
[Ctrl]-[Z]Останавливает текущее приложение. Последующий ввод bg переводит приложение в фоновый режим.
[Ctrl]-[C]«Убивает» программу. Используется в крайнем случае. Сначала попробуйте закрыть программу другими способами.
[Ctrl]-[L]Очищает окно терминала.

Комментариев нет: