Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
wiki:использование_терминала [2012/05/17 13:40] [Ссылки] |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Использование терминала ====== | ||
- | Под Linux существуют GUI (графические интерфейсы пользователя), где вы можете с помощью мышки выполнить необходимую работу без чтения большого объёма документации. Но традиционное окружение Unix - это CLI (интерфейс командной строки), где вы вводите команды, чтобы сказать компьютеру о том, что нужно сделать. Такой подход является более гибким и обеспечивает больше возможностей, а также более быструю работу, но требует знания команд. | ||
- | Существует множество разнообразных дистрибутивов Linux, но практически все они используют одни и те же команды, которые вводятся в терминале. | ||
- | Также существует великое множество графических интерфейсов (GUI), но они все работают по разному и мало подчинены стандартам. Опытные пользователи, работающие с разными дистрибутивами Linux, обычно запоминают команды, которые универсальны для всех [[об_ubuntu|Ubuntu]] и, как правило, работают во всех остальных системах. | ||
- | |||
- | Команды консоли могут приводить в растерянность новичка: | ||
- | <code>sudo gobbledegook blah_blah -w -t -f | ||
- | aWkward/ComBinationOf/mixedCase/underscores_strokes/and.dots</code> | ||
- | |||
- | Однако, даже опытные пользователи часто копируют команды из мануалов или гайдов себе в терминал. Они их просто не запоминают! | ||
- | Конечно, важно знать, как работать в терминале, и если вы умеете просто набирать текст или копировать его, вы справитесь с терминалом, работать там не сложнее. | ||
- | В этой статье собраны некоторые хитрые команды и комбинации клавиш, которые облегчат вам использование интерфейса консоли. | ||
- | |||
- | <note important>Помните, что терминал чувствителен к регистру! Слова User, user и USER в Linux различаются!</note> | ||
- | |||
- | ======Запуск терминала====== | ||
- | |||
- | **В Gnome (Ubuntu)** | ||
- | |||
- | Терминал находится в //Приложения->Стандартные->Терминал// | ||
- | |||
- | **В Xfce (Xubuntu)** | ||
- | |||
- | Терминал находится в //Приложения->Система->Терминал// | ||
- | |||
- | **В KDE (Kubuntu)** | ||
- | |||
- | Терминал находится в //Приложения->Система->Терминал(Konsole)// | ||
- | |||
- | ====== Команды ====== | ||
- | <note important>Все команды, приведённые на этой странице, должны быть выполнены из командной строки в терминале.</note> | ||
- | ===== Выполнение команд с неограниченными привилегиями ===== | ||
- | Перед большинством команд, перечисленных ниже, необходимо писать команду:<code>sudo</code> | ||
- | Это временно даёт права суперпользователя, которые необходимы для работы с файлами и каталогами, которые не принадлежат вашему аккаунту. Для использования | ||
- | ''sudo'' требуется ввести пароль. Только пользователи с такими административными привилегиями могут использовать эту команду. | ||
- | |||
- | ===== Команды для работы с файлами и папками ===== | ||
- | * Символ тильда (~) обозначает вашу домашнюю папку. Если вы //user//, то тильда (~) — это /home///user//. | ||
- | * Команда ''pwd'' ("print working directory") позволяет вам узнать, в какой директории вы находитесь в данный момент. Помните, однако, что эту же информацию [[терминал|Gnome Terminal]] всегда показывает в названии окна. | ||
- | * ''ls'' покажет вам все файлы в текущей директории. Если использовать эту команду с определёнными опциями, можно также включить отображение размера файлов, времени последнего изменения и прав на файлы. Например: <code>ls ~</code> покажет всё, что у вас есть в домашней папке. | ||
- | * Команда ''cd'' меняет рабочую директорию. Когда вы только запускаете терминал, вы будете находиться в вашей домашней папке. Чтобы перемещаться по файловой системе, нужно использовать ''cd''. Примеры: | ||
- | - Чтобы попасть в корневой каталог, выполните:<code>cd /</code> | ||
- | - Чтобы попасть в домашнюю папку, выполните:<code>cd ~</code> | ||
- | - Чтобы переместиться на один каталог вверх, используйте: <code>cd ..</code> | ||
- | - Для возврата в предыдущую посещённую директорию, используйте: <code>cd -</code> | ||
- | - Для перемещения через несколько директорий за раз, нужно написать полный путь папки, в которую вы хотите переместиться. Например, команда: <code>cd /var/www</code> переместит вас в подкаталог /www каталога /var/. А команда: <code>cd ~/Рабочий\ стол</code> переместит вас на рабочий стол. В данном случае "\" обозначает экранирование пробела. | ||
- | * Команда ''cp'' копирует файл. Например, команда: <code>cp text new</code> создаст точную копию файла "text" и назовёт её "new", при этом "file" никуда не исчезнет. Для копирования директории необходимо воспользоваться командой: <code>cp -r directory new</code> где опция ''-r'' обозначает рекурсивное копирование. | ||
- | * Команда ''mv'' перемещает файл в другое место или просто переименовывает файл. Например, команда: <code>mv file text</code> переименует "file" в "text". <code>mv text ~/Рабочий\ стол</code> переместит "text" вам на рабочий стол, но не переименуют его. Чтобы всё-таки переименовать файл, нужно специально указывать ему новое имя. Вы можете заменять путь к вашей домашней папке на '~', чтобы ускоряет работу. Помните, что при использовании ''mv'' вместе с ''sudo'', терминал так же привязывает '~' к вашей домашней папке. Однако если вы включаете сессию суперпользователя в консоли с помощью ''sudo -i'' или ''sudo -s'', то '~' будет ссылаться на корень диска, а не на ваш домашний каталог. | ||
- | * Команда ''rm'' удаляет файл. | ||
- | * Команда ''rmdir'' удаляет пустую папку. Чтобы удалить папку вместе со всеми вложениями, используйте ''rm -r'' вместо этого. | ||
- | * ''mkdir'' Эта команда создаёт директорию. Команда ''mkdir music'' создаст вам папку, которая будет называться "music". | ||
- | * ''man'' попробуйте эту команду, когда вы хотите прочитать встроенное описание другой команды. Например: <code>man man</code> покажет вам описание самой этой команды. | ||
- | |||
- | ===== Команды информации о системе ===== | ||
- | |||
- | * Команда ''df'' показывает объём занятого дискового пространства на всех смонтированных разделах. Наиболее полезна: <code>df -h</code> Поскольку использует для отображения Мегабайты (M) и Гигабайты (G), а не блоки. ''-h'' означает "human readable" ("читабельный для человека"). | ||
- | * Команда ''du'' отображает объём дискового пространства, занятого конкретной папкой. Она может показывать информацию для всех поддиректорий отдельно или для папки в целом. | ||
- | .. <code> | ||
- | user@users-desktop:~$ du /media/floppy | ||
- | 1032 /media/floppy/files | ||
- | 1036 /media/floppy/ | ||
- | user@users-desktop:~$ du -sh /media/floppy | ||
- | 1.1M /media/floppy/ | ||
- | </code> | ||
- | * ''-s'' означает "summary" (в целом), а ''-h'' означает "human readable" ("читабельный для человека"). | ||
- | * Команда ''free'' отображает объём свободной и занятой оперативной памяти. Команда: <code>free -m</code> показывает информацию в Мегабайтах. | ||
- | * Команда ''top'' отображает информацию о вашей системе, запущенных процессах и системных ресурсах, включая загрузку CPU, использование RAM и swap и количество запущенных процессов. Чтобы остановить ''top'', нажмите <key>q</key>. | ||
- | * Команда ''uname'' с опцией ''-a'' выводит всю системную информацию, включая имя машины, версию ядра и другие детали. Самое полезное из этого — проверка версии ядра. | ||
- | *Команда ''lsb_release'' с опцией ''-a'' выводит информацию о версии Linux, которую вы используете. Например: | ||
- | <code> | ||
- | user@computer:~$ lsb_release -a | ||
- | No LSB modules are available. | ||
- | Distributor ID: Ubuntu | ||
- | Description: Ubuntu 6.06 LTS | ||
- | Release: 6.06 | ||
- | Codename: dapper | ||
- | </code> | ||
- | * ''ifconfig'' выводит отчёт о сетевых интерфейсах системы. | ||
- | |||
- | ===== Добавление нового пользователя ===== | ||
- | |||
- | * Команда создаёт нового пользователя в вашей системе с именем **"newuser"**: <code>adduser newuser</code> Чтобы назначить ему пароль, используйте: <code>passwd newuser</code> | ||
- | |||
- | ===== Построение дерева каталогов (tree) ===== | ||
- | Утилита выводит дерево каталогов в красиво отформатированном виде. | ||
- | Пакет tree находится в репозиториях Ubuntu, поэтому установка выполняется одной строкой: | ||
- | <code bash>sudo apt-get install tree</code> | ||
- | Для вывода дерева каталогов команда должна иметь следующий вид: | ||
- | <code bash>tree -dA test</code> | ||
- | {{ :wiki:консоль:консоль_tree.png?nolink |}} | ||
- | ====== Опции ====== | ||
- | Стандартное поведение команды обычно изменется, для этого используются опции команд, ''--option''. К примеру, команда ''ls'' имеет опцию ''-s'', использование которой приведёт к отображению помимо списка файлов их размеры. А добавление опции ''-h'', опять же, сделает размеры "читаемыми". | ||
- | Опции могут быть сгруппированы, и команда ''ls -s -h'' может быть заменена на ''ls -sh''. Большинство опций имеют свой длинный вариант, начинающийся с двух дефисов вместо одного. В таком виде всё та же команда будет выглядеть как ''ls --size --human-readable''. | ||
- | |||
- | ====== Man и получение справки ====== | ||
- | <note important>команды ''man'', ''info'' и ''command --help'' — самые главные инструменты в консоли.</note> | ||
- | Почти каждая команда и приложение в Linux имеет man-файл (мануал). Найти его очень просто: для этого нужно ввести ''man "command''. Например:<code>man mv</code> покажет мануал команды ''mv''. | ||
- | |||
- | Перемещаться по этому мануалу можно клавишами со стрелками, а выйти из него, нажав клавишу <key>q</key>. | ||
- | |||
- | Команда: <code>man intro</code> особенно полезная. Она отображает "Введение в пользовательские команды" — толково написанное, краткое и понятное введение в команды консоли Linux. | ||
- | |||
- | Также существуют справочные страницы, которые обычно глубже, чем мануалы. Попробуйте выполнить: <code>info info</code> для прочтения введения в справку. | ||
- | |||
- | Некоторые разработчики программного обеспечения предпочитают справку мануалам (например, разработчики GNU), поэтому если вы встретите часто используемую программу, у которой нет страницы мануала, стоит найти справку. | ||
- | |||
- | Практически все команды понимают опцию ''-h'' (или ''--help''), которая выводит краткое описание использование команды и её опций, а затем выходит в консоль. Попробуйте выполнить: | ||
- | <code> | ||
- | man -h | ||
- | man --help | ||
- | </code> | ||
- | Чтобы увидеть, как это работает. | ||
- | |||
- | <note warning>Бывает, что программа не интерпретирует опцию **-h** как вызов справки. В таком случае ознакомьтесь с man'ом и попробуйте длинную опцию **--help** перед **-h**.</note> | ||
- | |||
- | ===== Поиск по man'ам ===== | ||
- | Если вы не уверены, какая команда вам нужна, попробуйте поискать по текстам мануалов. | ||
- | * <code>man -k something-you-need</code> будет искать то, что вам нужно во всех мануалах. Попробуйте: <code>man -k nautilus</code> чтобы увидеть, как это работает. Кстати, это то же самое, что выполнить команду ''apropos''. | ||
- | * <code>man -f something-you-need</code> будет искать только по названиям системных мануалов. Попробуйте: <code>man -f gnome</code>. Для примера выполнение команды ''whatis'' приведёт к такому же результату. | ||
- | |||
- | ====== Другие полезные вещи ====== | ||
- | |||
- | ===== Более привлекательные man'ы ===== | ||
- | Пользователи, у которых установлен Konqueror, могут читать страницы мануалом и выполнять по ним поиск в веб-браузерном контексте, украшенном выбранными фоновыми рисунками. Для этого нужно набрать в строке адреса Konqueror'а использовать команду: | ||
- | <code>man:/command</code> | ||
- | |||
- | ===== Копирование команд ===== | ||
- | Часто вам придётся следовать каким-либо инструкциям, которые требуют копирования команд в терминал. Наверное, вы удивитесь, когда обнаружите, что текст, скопированный вами с интернет-страницы при помощи комбинации клавиш <key>Ctrl+C</key>, не вставлятся в терминал при нажатии <key>Ctrl+V</key>. И что, неужели придётся перепечатывать все эти команды и имена файлов вручную? Нет, расслабьтесь! Вставить текст в терминал можно тремя способами: <key>Ctrl+Shift+V</key>, нажатием средней кнопки мыши или правой кнопки мыши и выбором строки "Вставить". | ||
- | |||
- | ===== Экономия набора ===== | ||
- | |||
- | | **стрелка вверх** или **ctrl+p** | прокрутка недавно использованных команд вверх | | ||
- | | **стрелка вниз** или **ctrl+n** | прокрутка недавно использованных команд вниз | | ||
- | | **Enter** | выполнение выбранной команды | | ||
- | |** tab** | крайне удобная возможность - автозаподстановка команд и имён файлов. Если с выбранных символов начинается только одна команда, подставится именно она, а если их несколько, то по нажатию tab выведется список всех возможных вариантов.| | ||
- | | **ctrl+r** | поиск по командам, которые вы вводили раньше. Если вам нужно повторно выполнить очень длинную и сложную команду, вы можете ввести только её часть, а эта комбинация клавиш поможет найти команду целиком.| | ||
- | | **History** | Команда **history** выводит список всех команд, которые вы вводили. Каждой команде будет присвоен номер. Чтобы выполнить команду под номером x, просто введите **"x!"**. Если у вас получилась слишком длинная история, можно попробовать **"history I less"**, это сделает список прокручиваемым. | | ||
- | |||
- | =====Изменение текста===== | ||
- | |||
- | Здесь мышь не работает. Используйте стрелки влево/вправо, чтобы перемещаться по строке. | ||
- | |||
- | Ввод с клавиатуры будет добавлять символы. Существующий текст удаляться не будет. | ||
- | |||
- | | **ctrl+a** или **Home** | перемещает курсор в начало строки | | ||
- | | **ctrl+e** или **End** | перемещает курсор в конец строки | | ||
- | | **ctrl+b** | перемещает курсор в начало предыдущего или текущего слова | | ||
- | | **ctrl+k** | удаляет текст с текущей позиции курсора до конца строки | | ||
- | | **ctrl+u** | удаляет всю текущую строку | | ||
- | | **ctrl+w** | удаляет слово перед курсором | | ||
- | |||
- | =====Другие способы запуска терминала===== | ||
- | |||
- | Вы можете назначить горячие клавиши на запуск терминала. | ||
- | |||
- | Можно запустить больше одного терминала, либо в раздельных окнах, либо во вкладках одного. | ||
- | |||
- | ======Ссылки====== | ||
- | * [[консоль|Что такое консоль и терминал]] | ||
- | * [[http://zeroed.ru/ubuntu/console|Убунтология: Консоль]] | ||
- | * [[https://help.ubuntu.com/community/UsingTheTerminal|Оригинал статьи]] | ||
- | |||
- | ====== Смотрите также ====== | ||
- | {{topic>Терминал -tips -howto&nouser}} | ||
- | <style float-right>//[[terms:теги#как_узнать_какой_тег_соответствует_той_или_иной_категории|Если хотите, чтобы ваша статья появилась на этой странице, поставьте тег: Терминал]]//</style> | ||
- | |||
- | {{tag>HOWTO Система Администрирование Консоль tips}} |