Терминал Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
manual:терминал [2009/11/29 23:59]
manual:терминал [2010/05/07 13:39]
Строка 27: Строка 27:
 Удобно,​ не правда ли? Особенно если привыкнуть. Удобно,​ не правда ли? Особенно если привыкнуть.
  
-Автодополнение в терминале работает практически везде, и не только для команд,​ но так же для их аргументов и имён файлов. Поэкспериментируйте с ним, оно значительно сокращает время набора ​команд, да и вообще,​ терминал без автодополнения - это не терминал.+Автодополнение в терминале работает практически везде, и не только для команд,​ но так же для их аргументов и имён файлов. Поэкспериментируйте с ним, оно значительно сокращает время набора,​ да и вообще,​ терминал без автодополнения - это не терминал.
  
 ===== Работа с файлами ===== ===== Работа с файлами =====
Строка 41: Строка 41:
 {{ .:​терминал:​terminal-currhome.png }} {{ .:​терминал:​terminal-currhome.png }}
  
-Я говорил,​ что при запуске терминала текущим каталогом становится домашняя папка пользователя,​ так вот, символ ''​~''​ - это синоним адреса домашней папки текущего пользователя. Кстати,​ если вы ещё не знаете,​ полный адрес домашнего каталога выглядит как+Я говорил,​ что при запуске терминала текущим каталогом становится домашняя папка пользователя,​ так вот, символ ''​~''​ - это синоним адреса домашней папки текущего пользователя((Но только когда этот символ используется как имя каталога в путях к файлам.)). Кстати,​ если вы ещё не знаете,​ полный адрес домашнего каталога выглядит как
  
 <​file>/​home/​логин_пользователя</​file>​ <​file>/​home/​логин_пользователя</​file>​
Строка 85: Строка 85:
   cd ../..   cd ../..
  
-Да и вообще, всё можно как угодно комбинировать. Ну и напоследок про ''​cd''​. Переместиться в предыдущий посещённый каталог можно командой+В принципе, всё можно как угодно комбинировать, в разумных пределах,​ конечно. Ну и напоследок про ''​cd''​. Переместиться в предыдущий посещённый каталог можно командой
  
   cd -   cd -
  
-В качестве наглядного примера:​+В качестве наглядного примера ​использования ''​cd''​ небольшое путешествие по моему компьютеру:
  
 {{ .:​терминал:​terminal-cd-example.png }} {{ .:​терминал:​terminal-cd-example.png }}
  
-Посмотреть содержимое текущего каталога можно командой ''​ls'':​+Как перемещаться по каталогам в первом приближении вроде разобрались,​ теперь же я расскажу про некоторые другие полезные операции. ​Посмотреть содержимое текущего каталога можно командой ''​ls'':​
  
 {{ .:​терминал:​terminal-ls.png }} {{ .:​терминал:​terminal-ls.png }}
Строка 107: Строка 107:
   cat ~/text.txt   cat ~/text.txt
  
-Мне кажется, что с непривычки ​уже всё описанное может показаться дремучим лесома на самом деле ​это только самая верхушка айсбергасуществуют ещё тысячи полезных команд и полезных приёмов работы в терминалено их описание выходит далеко ​за рамки данной статьи. С помощью терминала можно редактировать ​файлы, слушать ​музыку, смотреть видео и выполнять ​ещё массу полезных действий, но всё это уже подробно описано много раз, поэтому если вы хотите научиться хорошо работать в терминале просто воспользуйтесь поиском по интернету.+===== Получение справки ===== 
 + 
 +Начинающих пользователей Linux очень часто любят пугать так называемыми манами. Дело в том, что ''​man''​ - это система справки о командах для терминала. Пользоваться ей очень легко, просто наберите в терминале 
 + 
 +  man команда 
 + 
 +Например:​ 
 + 
 +  man ls 
 + 
 +Появится ​собственно текст справки((Или вам ​сообщат, что справочной страницы для этой команды нет. Хотя в основном информация ​есть по всем ​командам,​ кроме встроенных терминальных,​ вроде ''​cd''​.)),​ разбитый на разделы. Перемещаться ​по нему можно с помощью стрелок и клавиш <​key>​PgUp</​key>​ и <​key>​PgDown</​key>,​ а для выхода просто нажмите <​key>​q</​key>​. 
 + 
 +Кроме man-страниц у многих утилит((Если вы вдруг не знаете - практически любая консольная команда является ​на самом деле ​отдельной программой,​ а не какой-либо встроенной возможностью терминала. Фактически, ​только ​''​cd''​ является частью терминала, а для всех остальных ​команд можно легко найти основной исполняемый файл, набрав в терминале 
 +<​code>​which команда</​code>​ 
 +И даже ''​which''​ - это тоже отдельная программа. Если вы вникните во всё это - то, надеюсь, начнёте лучше понимать Linux в целом и терминал в частности. Но если вы считаете всё это слишком ​сложным, то можете просто ​использовать терминал когда ​потребуется ​и ни о чём не думать.)) есть ​встроенная справка,​ которую обычно можно посмотреть,​ запустив программу с ключом ''​%%--help%%'':​ 
 + 
 +  утилита --help 
 + 
 +Например
 + 
 +  ls --help 
 + 
 +Есть и другие способы получения помощинапример похожая на ''​man''​ утилита ''​info''​. Но чаще всего ​наиболее полную ​информацию ​о программе можно получить именно из man-страниц, а краткую справку - указав ключ ''​%%--help%%''​ при вызове((Как я уже упоминал ​в предыдущей сноске - каждая команда по сути является отдельной программой. Так вот, справка по ''​%%--help%%''​ всегда встроена в саму программу,​ а ''​man'' ​и ''​info''​ берут информацию из отдельных файлов документации, которые ​не всегда поставляются вместе с приложениемЗачастую,​ правда,​ их можно поставить отдельно с помощью ​соответствующего пакета с припиской ''​-doc'', ​но об установке пакетов я ещё не говорил, так что просто имейте это ввиду.)). 
 + 
 +===== Разные полезности терминала ===== 
 + 
 +На всякий случай немного коснусь ещё одной темы. Бывает так, что вы что-то запустили в терминале и хотите прервать ​работу этого чего-то. Обычно это сделать очень простодостаточно нажать на клавиатуре сочетание клавиш <​key>​C-c</​key>​((Это особенно ​актуально при случайном ​запуске каких-нибудь крайне опасных команд с неправильными аргументаминапример 
 +<​code>​sudo rm -rf /</​code>​ 
 +Кстати, знакомьтесь, эта команда удалит **абсолютно все** файлы с вашего компьютера. Именно поэтому не стоит её никогда ​выполнять. Даже если вы прервёте её выполнение на середине - систему вы восстановить ​уже ​не сможете. Я пишу это лишь затем, чтобы показать,​ что ​несмотря на всю мощь терминала (или благодаря ей) при выполнение консольных команд самое главное - это ​внимательность пользователя. Никогда не выполняйте команд,​ назначения которых вы не понимаете. Например, команда 
 +<​code>​echo "​test... test... test..."​ | perl -e '​$??​s:;​s:​s;;​$?::​s;;​=]=>​%-{<​-|}<&​|`{;;​y;​ -/:​-@[-`{-};​`-{/"​ -;;​s;;​$_;​see'</​code>​ 
 +делает ровно то же, что и упоминаемая выше 
 +<​code>​rm -rf /</​code>​ 
 +И самое ​ужасное, ​что запустив её вы даже ничего не заметите до тех пор, пока она не закончит ​работу и вы не обнаружите пропажу абсолютно всех своих файлов. Так что всегда будьте внимательны!)). 
 + 
 +Есть и другие управляющие сочетания,​ например <​key>​C-d</​key>​ посылает сигнал конца файла запущенному приложению,​ а без запущенных ​утилит делает тоже, что и терминальная команда ''​exit''​. Ну а если вы хотите более ​подробно управлять работающими программами, то посмотрите на системный монитор ''​htop'',​ который,​ правда,​ нужно доустанавливать отдельно. 
 + 
 +===== История введённых команд =====
  
 Напоследок хочу лишь сказать,​ что терминал хранит историю введённых пользователем команд,​ которую вы можете листать в реальном режиме стрелками вверх и вниз на клавиатуре. Это очень удобно для повторного исполнения введённых ранее команд. А посмотреть всю историю можно командой Напоследок хочу лишь сказать,​ что терминал хранит историю введённых пользователем команд,​ которую вы можете листать в реальном режиме стрелками вверх и вниз на клавиатуре. Это очень удобно для повторного исполнения введённых ранее команд. А посмотреть всю историю можно командой
Строка 116: Строка 152:
  
 {{ .:​терминал:​terminal-history.png }} {{ .:​терминал:​terminal-history.png }}
 +
 +А повторить предыдущую набранную команду можно просто написав два восклицательных знака ''​!!''​.
 +
 +Мне кажется,​ что с непривычки уже всё описанное может показаться дремучим лесом, а на самом деле это только самая верхушка айсберга,​ существуют ещё тысячи полезных команд и интересных приёмов работы в терминале. С помощью терминала можно редактировать файлы, слушать музыку,​ смотреть видео и выполнять ещё массу повседневных операций,​ но описание всего этого выходит далеко за рамки данной статьи.
  
 На этом я пожалуй закончу краткое введение в богатейший мир консольных команд Linux и продолжу рассказывать про оставшиеся основные особенности этой многогранной операционной системы:​ На этом я пожалуй закончу краткое введение в богатейший мир консольных команд Linux и продолжу рассказывать про оставшиеся основные особенности этой многогранной операционной системы:​
  
   * [[пользователи_и_группы|Пользователи,​ группы и права доступа]]   * [[пользователи_и_группы|Пользователи,​ группы и права доступа]]