Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx»
Шрифт:
Хочу сразу обратить внимание на несколько важных особенностей. Во-первых, при наборе путей также работает автодополнение по Tab, это очень удобно. Во-вторых, использовать различные небуквенные символы и пробелы напрямую при наборе путей нельзя. Например, для того, чтобы перейти в каталог, содержащий в имени символ пробела, надо при наборе пути к такому каталогу перед пробелом поставить символ обратного слеша \. Вот так:
cd Каталог\ с\ плохими\ символами\ в\ имени\<\>
Установка обратного слеша перед некоторыми символами называется экранированием. Кстати, при использовании автодополнения все слеши расставляются автоматически. Кроме того, можно просто заключить путь в двойные кавычки:
cd "Каталог с плохими
Но в этом случае автодополнение работать не будет. Заменитель адреса домашнего каталога ~ можно использовать и при наборе путей, например:
cd ~/Музыка
А для перемещения непосредственно в домашний каталог достаточно просто набрать cd без аргументов. Для перемещения на каталог выше можно использовать команду
cd ..
Вообще, две точки обозначают всегда родительский каталог, поэтому можно делать так:
cd ../..
Рис. 14.7: Пример применения команды cd.
В принципе, всё можно как угодно комбинировать, в разумных пределах, конечно. Ну и напоследок про cd. Переместиться в предыдущий посещённый каталог можно командой
cd -
В качестве наглядного примера использования cd небольшое путешествие по моему компьютеру ( Рис. 14.7 ).
Как перемещаться по каталогам в первом приближении вроде разобрались, теперь же я расскажу про некоторые другие полезные операции. Посмотреть содержимое текущего каталога можно командой ls:
Рис. 14.8: Вывод содержимого текущего каталога.
Обычно командам можно передавать различные модификаторы, например можно изменить способ вывода информации командой ls. Кстати, команда ls -l показывает различную дополнительную информацию о содержимом каталога:
Рис. 14.9: Расширенный вывод содержимого текущего каталога.
Очень часто параметрами команд являются имена файлов или папок, именно для этого я так подробно рассказывал о способе перемещения по каталогам и использования различных имён файлов в качестве аргументов. Например, команда cat показывает содержимое текстового файла, и если вы хотите посмотреть содержимое файла test.txt, лежащего в вашем домашнем каталоге, то вы могли бы выполнить команду
cat ~/text.txt
14.3 Получение справки
Начинающих пользователей Linux очень часто любят пугать так называемыми манами. Дело в том, что man — это система справки о командах для терминала. Пользоваться ей очень легко, просто наберите в терминале
man команда
Например:
man ls
Появится собственно текст справки [52] , разбитый на разделы. Перемещаться по нему можно с помощью стрелок и клавиш PgUp и PgDown, а для выхода просто нажмите Q.
52
Или вам сообщат, что справочной страницы для этой команды нет. Хотя в основном информация есть по всем командам, кроме встроенных терминальных, вроде cd.
Кроме man-страниц у многих утилит [53] есть встроенная справка, которую обычно можно посмотреть, запустив программу с ключом – -help:
утилита --help
Например:
ls --help
Есть и другие способы получения помощи, например похожая на man утилита info. Но чаще всего наиболее полную информацию о программе можно получить именно из man-страниц, а краткую справку — указав ключ – -help при вызове [54] .
53
Если вы вдруг не знаете — практически любая консольная команда является на самом деле отдельной программой, а не какой-либо встроенной возможностью терминала. Фактически, только cd является частью терминала, а для всех остальных команд можно легко найти основной исполняемый файл, набрав в терминале
which команда
И даже which — это тоже отдельная программа. Если вы вникните во всё это — то, надеюсь, начнёте лучше понимать Linux в целом и терминал в частности. Но если вы считаете всё это слишком сложным, то можете просто использовать терминал когда потребуется и ни о чём не думать.
54
Как я уже упоминал в предыдущей сноске — каждая команда по сути является отдельной программой. Так вот, справка по – -help всегда встроена в саму программу, а man и info берут информацию из отдельных файлов документации, которые не всегда поставляются вместе с приложением. Зачастую, правда, их можно поставить отдельно с помощью соответствующего пакета с припиской – doc, но об установке пакетов я ещё не говорил, так что просто имейте это ввиду.
14.4 Разные полезности терминала
На всякий случай немного коснусь ещё одной темы. Бывает так, что вы что-то запустили в терминале и хотите прервать работу этого чего-то. Обычно это сделать очень просто, достаточно нажать на клавиатуре сочетание клавиш Ctrl-C [55] .
Есть и другие управляющие сочетания, например Ctrl-D посылает сигнал конца файла запущенному приложению, а без запущенных утилит делает тоже, что и терминальная команда exit. Ну а если вы хотите более подробно управлять работающими программами, то посмотрите на системный монитор htop, который, правда, нужно доустанавливать отдельно.
55
Это особенно актуально при случайном запуске каких-нибудь крайне опасных команд с неправильными аргументами, например
sudo rm -rf /
Кстати, знакомьтесь, эта команда удалит абсолютно все файлы с вашего компьютера. Именно поэтому не стоит её никогда выполнять. Даже если вы прервёте её выполнение на середине — систему вы восстановить уже не сможете. Я пишу это лишь затем, чтобы показать, что несмотря на всю мощь терминала (или благодаря ей) при выполнение консольных команд самое главное — это внимательность пользователя. Никогда не выполняйте команд, назначения которых вы не понимаете. Например, команда
echo “test” | perl -e ’$??s:;s: s;;$?::s;;=]=>%-{<-|}<&|‘{;;y; -/:-@[-‘{-};‘-{/“ -;;s;;$_;see’
делает ровно то же, что и упоминаемая выше
rm -rf /
И самое ужасное, что запустив её вы даже ничего не заметите до тех пор, пока она не закончит работу и вы не обнаружите пропажу абсолютно всех своих файлов. Так что всегда будьте внимательны!
14.5 История введённых команд
Напоследок хочу лишь сказать, что терминал хранит историю введённых пользователем команд, которую вы можете листать в реальном режиме стрелками вверх и вниз на клавиатуре. Это очень удобно для повторного исполнения введённых ранее команд. А посмотреть всю историю можно командой
history
У каждой команды в истории есть номер, выполнить снова команду с определённым номером можно набрав в терминале восклицательный знак и номер нужной команды: