Как в командной строке вводить команды: Командная строка Linux: краткий курс для начинающих
Содержание
Ввод команд в командной строке (Понятие)
Ввод команд в командной строке (Понятие)
Руководство
пользователя AutoCAD 2008 > Пользовательский
интерфейс > Окно
команд >
Ввод команд в командной строке
Понятие | Процедура | Краткий справочник |
Команда вызывается с помощью клавиатуры. Некоторые
команды имеют также сокращённые псевдонимы.
Для ввода
команды с клавиатуры наберите полное имя команды в командной строке
и нажмите клавишу ENTER или ПРОБЕЛ.
ПримечаниеКогда
включён параметр «Динамический ввод» и подключено отображение
динамических подсказок, можно ввести несколько команд из подсказок
рядом с курсором.
Некоторые
команды имеют также сокращённые имена. Например, вместо того, чтобы
вводить слово отрезок для выполнения
команды ОТРЕЗОК, можно
ввести l. Сокращенные имена команд
называются псевдонимами команд; они
определены в файле acad.pgp.
Подробнее о
создании новых псевдонимов команд см. раздел Псевдоимена
команд в документе Руководство
по адаптации.
Чтобы найти
команду, введите букву в командной строке и нажмите клавишу TAB для
циклического переключения между всеми командами, начинающимися с
этой буквы. Нажмите клавишу ENTER или ПРОБЕЛ. Повторно запустите
недавно использованную команду нажатием правой кнопкой мыши в
командной строке.
Задание
параметров команд
При вводе
команд в командной строке отображается либо набор параметров, либо
диалоговое окно. Например, при вводе команды круг в командной строке отображается подсказка
следующего вида:
Центр круга или [3Т/2Т/ККР (кас, кас,
радиус)]:
Для задания
центра круга можно ввести значения координат X,Y или указать нужную точку на экране с помощью
устройства указания.
Выбор другого
параметра выполняется вводом соответствующих прописных букв,
перечисленных в квадратных скобках. Эти буквы можно вводить в любом
регистре. Например, для выбора параметра «три точки» (3Т) введите
3р.
Выполнение
команд
Для выполнения
команды нажмите клавишу ПРОБЕЛ или ENTER или нажмите правую кнопку
устройства указания после ввода имени команды или ответов на
запросы. В инструкциях справочной системы подразумевается
выполнение этих действий пользователем и отсутствует напоминание о
необходимости нажатия клавиши ENTER после каждого ввода.
Повтор и
отмена команд
Для повторного
вызова последней команды нажмите клавишу ENTER или ПРОБЕЛ или
нажмите правую кнопку устройства указания на индикаторе подсказки
команды.
Кроме того, для
повтора команды можно ввести нескольк и,
через пробел, имя нужной команды так, как это показано в следующем
примере:
Команда:
нескольк круг
Для отмены
выполняющейся команды нажмите клавишу ESC.
Прерывание
выполнения команды вводом другой команды или изменением значения
системной переменной
Многие команды
можно использовать в прозрачном режиме, т. е. вызывать их в ходе
выполнения другой команды. Прозрачные команды, например СЕТКА или ПОКАЗАТЬ, обычно предназначены для
изменения параметров чертежа или параметров отображения. В
Справочнике команд прозрачные команды
отмечены апострофом перед именем команды.
Для
использования команды в прозрачном режиме нужно нажать
соответствующую кнопку на панели инструментов или перед вводом
команды в ответ на любую из подсказок программы введите апостроф
(‘). В командной строке перед подсказками, которые отображаются для
прозрачных команд, выводятся двойные угловые скобки (>>).
После завершения прозрачной команды возобновляется работа исходной.
Например, для включения сетки с интервалом в 1 единицу в ходе
рисования отрезка нужно ввести:
Команда: отрезок
Первая точка: ‘сетка
>>Интервал сетки (X) или
[Вкл/Откл/Шаг/Аспект] <0,000>: 1
Возобновляется команда ОТРЕЗОК
Первая точка:
Как правило, в
прозрачном режиме можно пользоваться командами, которые не выполняют выбора объектов, не создают новых объектов
или не завершают сеанс работы. В прозрачном режиме можно открывать
некоторые из диалоговых окон, но произведённые с их помощью
изменения не вступают в силу до завершения приостановленной
команды. Точно так же, если при выполнении некоторой команды в
прозрачном режиме изменяется значение системной переменной, её
новое значение проявляется только в следующей команде.
См. также
- Ввод значений системных переменных в командной строке
- Окно команд
Работаем в консоли быстро и эффективно / Хабр
В сети можно встретить много советов по эффективной работе в консоли. В большинстве таких статей авторы рассказывают про банальности типа «выучите горячие клавиши» или «sudo !!
запустит последнюю команду под sudo». Я же расскажу о том, что делать, когда вы уже выучили горячие клавиши и знаете про sudo !!
.
Терминал должен запускаться мгновенно
Сколько времени вам нужно, чтобы запустить терминал? А ещё один? Долгое время мой терминал запускался сочетанием Ctrl+Alt+T и я думал, что это быстро. Но когда я переехал с Openbox на i3, то стал запускать терминал через Win+Enter, это сочетание было в конфиге по умолчанию. И знаете что? Я больше не считаю, что Ctrl+Alt+T — это быстро.
Разумеется, прикол не в выигрыше миллисекунд, а в том, что вы открываете терминал на уровне рефлексов, совершенно не замечая этого.
Если вы часто работаете в терминале, но для его запуска тянетесь к мышке, то попробуйте настроить удобную горячую клавишу. Я уверен, вам понравится.
Zsh вместо Bash
Это холиварная тема, знаю. Zsh стоит поставить хотя бы ради трёх фич: продвинутый автокомплит, коррекция опечаток и множественный pathname completition: когда один Tab превращает /u/s/d
в /usr/share/doc
. Arch Linux уже давно перешёл на zsh в своём установочном диске. Я надеюсь что однажды zsh станет дефолтным шеллом в Ubuntu. Это будет исторический момент.
Начать использовать zsh вообще не сложно. Установите его через менеджер пакетов и возьмите какой-нибудь готовый конфиг. Я рекомендую конфиг, который используется в Arch Linux:
wget -O ~/.zshrc https://git.grml.org/f/grml-etc-core/etc/zsh/zshrc
Осталось только поменять «шелл по-умолчанию» на zsh и перелогиниться.
chsh -s $(which zsh)
Всё, продолжайте работать как будто ничего не произошло.
Каким должен быть shell prompt
Shell prompt (приглашение командной строки) — это тот маленький текст, который выводится в терминале перед вашей командой. Его нужно настроить под свой характер работы. Воспринимайте его как приборную панель автомобиля. Поместите туда полезную информацию, пусть он будет помогать ориентироваться. Сделайте его удобным, особенно если видите его каждый день!
Shell prompt должен показывать текущий каталог шелла. Если текущий каталог не выводится в shell prompt, вам придётся держать его в голове и периодически проверять командой pwd
. Не надо так. Держите в голове более важные вещи и не тратьте время на команду pwd
.
Если вы периодически переключаетесь со своего пользователя на рута, вам нужна индикация текущего пользователя. Зачастую важно не конкретное имя пользователя, а его статус (обычный или рут). Проще всего это сделать цветом: красный shell prompt у рута, зелёный у своего пользователя. Так вы ни за что не спутаете рутовый шелл с обычным.
Если вы подключаетесь к серверам по ssh, то вам нужно как-то отличать свой локальный шелл от серверного. Для этого shell prompt должен содержать имя хоста, а ещё лучше — индикатор ssh-соединения.
Shell prompt умеет показывать код возврата последней команды. Напомню, что нулевой код возврата означает, что команда завершилась успешно, ненулевой — команда завершилась неуспешно. Код возврата последней команды можно узнать командой echo $?
, но набирать это всё на клавиатуре слишком долго. Пусть лучше shell prompt сообщит, если команда завершилась неуспешно.
Если вы работаете с git-репозиториями, то будет нелишним выводить в shell prompt статус репозитория: текущую ветку и состояние рабочей директории. Так вы сэкономите время на командах git status
и git branch
и не ошибётесь веткой при коммите.
Кто-то добавляет в свой shell prompt часы или имя виртуального терминала (tty), или какие-то произвольные закорючки. Это всё лишнее. Лучше оставить побольше места для команд.
Мой shell prompt в разных условиях выглядит так:
На скриншоте видно, что схожую задачу выполняет заголовок окна терминала. Это тоже кусок приборной панели и его тоже можно настроить.
Как это всё реализовать в своём .zshrc
? За левый prompt отвечает переменная PROMPT
, за правый — RPROMPT
. Определить статус пользователя (обычный или рут) поможет переменная EUID
, а наличие ssh-соединения — SSH_CLIENT
или SSh3_CLIENT
. Получаем такую заготовку:
if [[ -n "$SSH_CLIENT" || -n "$SSh3_CLIENT" ]]; then if [[ $EUID == 0 ]]; then PROMPT=... else PROMPT=... fi else # not SSH if [[ $EUID == 0 ]]; then PROMPT=. .. else PROMPT=... fi fi
Я специально не указываю готовый к копипасту код, потому что конкретная реализация — это дело вкуса. Если же вы не хотите заморачиваться и мой скриншот не вызывает у вас отвращения, можете взять конфиг с гитхаба.
Резюме:
- Необходимый минимум — это текущий каталог.
- Рутовый шелл должен быть хорошо заметен.
- Имя пользователя не несёт полезной нагрузки, если вы всегда сидите под одним пользователем.
- Хостнэйм полезен, если вы подключаетесь к серверам по SSH. Не обязателен, если всегда работаете на одной машине.
- Неуспешное завершение последней команды полезно видеть сразу.
- Статус git-репозитория экономит время на командах
git status
иgit branch
и является дополнительной защитой от дурака.
Активное использование истории команд
Бо́льшую часть команд в своей жизни вы вводите больше одного раза, а значит было бы удобно выдёргивать их из истории вместо того, чтобы набирать заново. Все современные шеллы умеют запоминать историю команд и предоставляют несколько способов поиска по этой истории.
Возможно вы уже умеете копаться в истории сочетанием Ctrl+R. У него есть два существенных недостатка:
- Чтобы начать поиск, поле ввода должно быть пустым. Т.е. в случае «начал набирать команду — вспомнил про поиск» придётся стереть начатое, нажать Ctrl+R и повторить ввод. Это очень долго.
- Поиск «вперёд» по умолчанию не работает, т.к. Ctrl+S останавливает терминал.
Как работает самый быстрый и удобный поиск:
- вы начинаете набирать команду,
- вы вспоминаете про поиск,
- вы нажимаете хоткей и шелл предлагает команды из истории, которые начинались точно так же.
Например, вы хотите синхронизировать некий локальный каталог с удалённым с помощью rsync
. Вы уже делали это пару часов назад и хотите вытащить команду из истории. Набираете rsync
, один-два раза нажимате некую комбинацию, и вот заветная команда готова к запуску. Вам не надо предварительно включать режим поиска по истории, shell prompt не меняется на (reverse-i-search)':
, ничего никуда не прыгает. Вы просто перебираете команды из истории. Так же, как и стрелочками ↑↓ вы перебираете ранее введённые команды, только с фильтром по началу комады. Это чертовски удобно и экономит уйму времени.
В оболочках fish и ipython такой поиск уже назначен на стрелочки. Я думаю что многие перешли на fish только ради такого поведения стрелочек.
В bash и zsh по-умолчанию такой поиск не работает, его надо включить руками. Я настроил PgUp для поиска назад и PgDown для поиска вперёд. Далековато до них тянуться, но я уже привык. Возможно в будущем переназначу на что-нибудь поближе, например Ctrl+P и Ctrl+N.
Для bash надо добавить пару строк в /etc/inputrc
или ~/.inputrc
:
"\e[5~": history-search-backward "\e[6~": history-search-forward
Если вы взяли готовый zshrc
, то там поиск скорее всего уже назначен на PgUp и PgDown. [[6~» history-beginning-search-forward # pg down
Любопытно, что со временем я стал писать команды из расчёта, что позже буду поднимать их из истории. Вот несколько приёмов:
Объединение команд, которые всегда выполняются друг за другом
ip link set eth2 up && dhclient eth2 mkdir /tmp/t && mount /dev/sdb1 /tmp/t
Абсолютные пути вместо относительных позволяют запускать команду, находясь в любом каталоге:vim ~/.ssh/config
вместо vim .ssh/config
, systemd-nspawn /home/chroot/stretch
вместо systemd-nspawn stretch
и т.д.
Подстановка по маске (wildcard) делает команды более универсальными. Обычно использую с chmod
и chown
.
chown root:root /var/www/*.sq && chmod 644 /var/www/*.sq
Горячие клавиши
Перечислю необходимый минимум.
Alt+. — подставляет последний аргумент предыдущей команды. Также можно набрать последовательность !$
.
Ctrl+A, Ctrl+E — переход к началу и концу редактируемой команды соответственно.
Ctrl+U, Ctrl+Y — вырезать всё в буфер обмена, вставить из буфера. Выручает, когда печатаешь сложную команду, а потом понимаешь, что перед ней надо выполнить другую. Хм, куда бы припрятать текущий ввод? Вот сюда и припрятать.
Ctrl+W — стирает одно слово слева от курсора. Если зажать и удерживать, быстро очищает командную строку. По умолчанию текст не удаляется, а помещается в буфер (который для Ctrl+Y).
Ctrl+K — удаляет от курсора и до конца строки. Ctrl+A, Ctrl+K быстро очищает командную строку.
PgUp, PgDown, Ctrl+R — поиск по истории.
Ctrl+L — очистить терминал.
Отзывчивость клавиатуры
Расскажу про маленькую настройку, которая позволяет быстрее скроллить, перемещаться по тексту или стирать. Что мы делаем, когда хотим стереть что-то длинное? Зажимаем Backspace и смотрим как курсор бежит назад, забирая лишние буквы. Что при этом происходит? При нажатии Backspace стирается один символ, затем идёт небольшая задержка, затем срабатывает автоповтор: Backspace убирает символы один за другим, как будто по нему постоянно стучат.
Я рекомендую отрегулировать задержку и частоту работы автоповтора под скорость своих пальцев. Задержка перед срабатыванием автоповтора нужна когда вы хотите удалить только один символ — она даёт вам время отпустить клавишу. Слишком долгая задержка заставляет ждать автоповтора. Не настолько долго, чтобы раздражать, но достаточно, чтобы тормозить перенос мыслей из головы в компьютер. Чем выше частота повтора, тем быстрее стирается текст, и тем сложнее вовремя остановить этот процесс. Суть настройки заключается в поиске золотой середины.
Итак, волшебная команда:
xset r rate 190 20
190 — длительность задержки в миллисекундах,
20 — частота в количестве повторений в секунду.
Я рекомендую начать с этих значений и понемногу уменьшать задержку до появления ложных срабатываний, затем чуть-чуть вернуть назад. Если установить очень короткую задержку, то клавиатурой станет невозможно пользоваться. Придётся перезагружать X-сервер или компьютер целиком. Так что будьте аккуратнее.
Чтобы сохранить параметры, добавьте эту команду куда-нибудь в автостарт иксов.
Индикатор завершения процесса
Мне довольно часто приходится запускать долгие процессы: какой-нибудь жирный бэкап, копирование по сети, распаковку/запаковку архивов, сборку пакетов и т.д. Обычно я запускаю такой процесс, переключаюсь на другую задачу и периодически поглядываю не завершился ли мой долгий процесс. Бывает, что я сильно погружаюсь в работу и забываю о нём. Решение — добавить нотификацию завершения процесса, которая выведет меня из транса.
Для этого можно использовать разные средства: notify-send, dzen2, beep, aplay. Все они по-своему хороши, но не работают по ssh. Поэтому я использую terminal beep:
long-running-command; echo $'\a'
В кодировке ASCII есть символ 0x7, именуемый bell. Он предназначен для того, чтобы пищать PC-спикером. PC-спикер — это несовременно, он не везде есть, а ещё его не слышно в наушниках. Поэтому некоторые терминалы применяют так называемый visual bell. Я использую urxvt, и он делает visual bell включением флага urgency. Это когда окно сообщает вам, что оно требует внимания.
Вы можете прямо сейчас проверить как ваш терминал реагирует на символ bell:
sleep 3; echo $'\a'
Три секунды даётся, чтобы вы успели переключиться на другое окно, иначе может не сработать.
К сожалению, visual bell через urgency есть не во всех терминалах. Я проверил самые популярные.
терминал | visual bell через urgency |
---|---|
konsole | включается в настройках |
urxvt | есть |
xfce4-terminal | включается в настройках |
xterm | нет |
cool-retro-term | нет |
lxterminal | нет |
gnome-terminal | нет |
Писать echo $'\a'
слишком долго, поэтому я сделал алиас wake
.
Алиасы
Команды cp
, scp
и rm
всегда должны работать рекурсивно. Аргумент -r
— это просто дурное легаси! У cp
ещё можно найти оправдание:
cp * foodir
скопирует в foodir только файлы, а с ключом -r
подумает, что вы решили скопировать foodir в самого себя. Но как часто вам нужна эта фича?
У rm
и scp
вообще нет оправданий, они просто зануды! Похожая ситуация с ключом -p
у команды mkdir
. Так что смело добавляем в ~/.zshrc
alias cp='cp -r' alias scp='scp -r' alias rm='rm -r' alias mkdir='mkdir -p'
Ух, как же я раньше без этого жил! Можно пойти ещё дальше и добавить -f
у rm
, но на свой страх и риск. Я пока себя сдерживаю.
Разные вариации ls
вы скорее всего уже используете, ведь это самые популярные алиасы.
alias ls='ls -F --color=auto' alias la='ls -A --color=auto' alias ll='ls -l --color=auto -h' alias lla='ll -A --color=auto -h'
Ну и цветной grep намного приятнее бесцветного:
alias grep='grep --colour=auto'
Не забывайте, что алиасы не работают в скриптах! Там надо указывать все ключи.
Слепой метод печати
Как бы банально это ни было, но слепой десятипальцевый метод печати позволяет быстрее печатать. Поначалу будет тяжело, но со временем вы разгонетесь до невиданных ранее скоростей.
Осваивать слепой метод печати лучше всего на каникулах или в отпуске, когда вас никто не торопит. В процессе обучения ни в коем случае нельзя спешить. Ваша задача — запомнить где какая буква находится. Причём не столько мозгом, сколько мышцами. Лучше набирать медленно, но без ошибок, чем быстро с ошибками. Помните: мастера добиваются высоких скоростей не за счёт быстрых пальцев, а потому что не делают ошибок.
Не стоит поначалу увлекаться клавогонками. Психологически тяжело оставаться хладнокровным во время соревнований. Учитесь на тренажёрах. Хорошо, когда тренажёр предлагает слова, которые можно мысленно произнести. Я учился на онлайн-тренажёрах vse10 и typingstudy. Известный тренажёр «Соло на клавиатуре» мне показался бестолковым.
Начинать стоит с центрального ряда «фывапролджэ». Только после того, как вы запомните где какая клавиша расположена, стоит двигаться дальше. Только после этого.
Делайте перерывы. Давайте отдых мозгу и пальцам. Чувствуете, что посыпались ошибки — пора делать перерыв.
Сначала я освоил слепой метод печати на русском языке и прифигел от ускорения. Сейчас совершенствую навык в английской раскладке.
Аргументы командной строки Windows Terminal
- Статья
Вы можете использовать wt.exe
, чтобы открыть новый экземпляр Windows Terminal из командной строки. Вместо этого вы также можете использовать псевдоним выполнения wt
.
Примечание
Если вы собрали Windows Terminal из исходного кода на GitHub, вы можете открыть эту сборку с помощью wtd. exe
или wtd
.
Синтаксис командной строки
Командная строка wt
принимает два типа значений: опции и команды . Параметры — это список флагов и других параметров, которые могут управлять поведением командной строки wt
в целом. Команды предоставляют действие или список действий, разделенных точкой с запятой, которые должны быть реализованы. Если команда не указана, предполагается, что команда равна 9.0013 новая вкладка по умолчанию.
wt [опции] [команда ; ]
Примечание
На поведение команды wt.exe
может влиять свойство windowingBehavior
. Этот параметр можно настроить по умолчанию между открытием нового окна или открытием новой вкладки.
Для отображения справочного сообщения со списком доступных аргументов командной строки введите: wt -h
, wt --help
, wt -?
или вес/?
.
Опции и команды
Ниже приведен полный список поддерживаемых команд и параметров для командной строки wt
.
Опция | Описание |
---|---|
--help, -h, -?, /? | Отображает справочное сообщение. |
--максимум, -М | Запускает терминал в развернутом виде. |
--полноэкранный режим, -F | Запускает терминал в полноэкранном режиме. |
--фокус, -f | Запускает терминал в режиме фокуса. Можно комбинировать с максимизированным . |
--pos x,y | Запускает в заданной позиции. x или y можно не указывать, чтобы использовать значение по умолчанию из настроек. |
--окно, -w идентификатор окна | Запускает данную команду в определенном окне. |
Параметр --window
может использоваться для отправки команд в существующие окна терминала.
идентификатор окна
может быть либо целочисленным идентификатором окна, либо именем окна. Он также принимает следующие зарезервированные значения:
-
new
или-1
: всегда запускать эту команду в новом окне -
last
or0
: Всегда запускайте эту команду в последнем использовавшемся окне
Если окна с указанным 9 не существует0013 window-id , тогда будет новое окно
созданный с этим идентификатором/именем.
Например, запуск wt -w _quake
откроет новое «окно землетрясения». Повторный запуск этой команды откроет новую вкладку в существующем окне quake.
Команда «Новая вкладка»
Используется для создания новой вкладки. См. также действие newTab
.
Команда | Параметр | Описание | Значения |
---|---|---|---|
новая вкладка , нт | --профиль, -p имя-профиля | Создает новую вкладку на основе назначенного имени профиля. | Имя профиля |
новая вкладка , нт | --начальный каталог, -d начальный каталог | Создает новую вкладку на основе назначенного начального пути к каталогу. | Путь к каталогу |
новая вкладка , нт | командная строка | Создает новую вкладку на основе назначенной командной строки. | Исполняемый файл с необязательными командами |
новая вкладка , нт | --название | Создает новую вкладку с назначенным заголовком. | Текст для использования в качестве заголовка вкладки |
новая вкладка , нт | --tabColor | Создает новую вкладку с назначенным цветом вкладки. | Шестнадцатеричный цвет как #RGB или #RRGGBB |
новая вкладка , нт | --suppressApplicationTitle | Переопределите параметр подавляющего приложенияTilte профиля и установите для него значение true | |
новая вкладка , нт | --useApplicationTitle | Переопределите параметр подавляющего приложенияTilte профиля и установите для него значение ложь | |
новая вкладка , нт | --colorScheme имя-схемы | Переопределить настройку профиля colorScheme и установить для нее схему из настроек с именем имя-схемы | Название цветовой схемы в настройках |
Подсказка
Если вы меняете заголовок вкладки в терминале Windows и хотите, чтобы этот заголовок сохранялся, вы должны включить параметр подавляющего приложения, установив для него значение 9. 0013 верно .
Команда разделения панели
Используется для создания новой разделенной панели. См. также действие splitPane
.
Команда | Параметр | Описание | Значения |
---|---|---|---|
сплит-панель , sp | -H, --горизонтальный , -V, --вертикальный | Создает новую разделенную панель окна по горизонтали или по вертикали. | Н/Д. Нет дополнительных значений для присвоения. |
сплит-панель , sp | --профиль, -p имя-профиля | Создает новую разделенную панель окна на основе назначенного профиля командной строки. Если этот параметр не задан, будет использоваться профиль по умолчанию. | Имя профиля |
сплит-панель , sp | --начальный каталог, -d начальный каталог | Создает новую разделенную панель окна на основе назначенного начального пути к каталогу. Если этот параметр не задан, будет использоваться начальный каталог по умолчанию. | Путь к каталогу |
сплит-панель , sp | --название | Создает новую разделенную панель окна с назначенным заголовком. | Текст для использования в качестве заголовка вкладки |
сплит-панель , sp | --tabColor | Создает новую разделенную панель окна с назначенным цветом вкладки. | Шестнадцатеричный цвет как #RGB или #RRGGBB |
сплит-панель , sp | --размер, -s размер | Создает новую разделенную панель окна с назначенным размером. | Число с плавающей запятой, указывающее часть родительской панели для использования, представленную десятичным числом. Например, .4 для представления 40% родительской панели. |
сплит-панель , sp | командная строка | Создает новую разделенную панель окна на основе назначенной командной строки. | Исполняемый файл с необязательными командами |
сплит-панель , sp | --дубликат, -D | Создает новую разделенную панель окна, которая является дубликатом текущей панели. | Н/Д. Нет дополнительных значений для присвоения. |
сплит-панель , sp | --suppressApplicationTitle | Переопределите параметр подавляющего приложенияTilte профиля и установите для него значение true | |
сплит-панель , sp | --useApplicationTitle | Переопределите параметр подавляющего приложения профиля и установите для него значение false | |
сплит-панель , sp | --colorScheme имя-схемы | Переопределить настройку профиля colorScheme и установить для нее схему из настроек с именем имя-схемы | Название цветовой схемы в настройках |
Команда «Фокус-вкладка»
Используется для выделения определенной вкладки в окне. См. также действие switchToTab
.
Команда | Параметр | Описание | Значения |
---|---|---|---|
вкладка фокуса , футов | --цель, -t индекс вкладки | Фокусируется на определенной вкладке в соответствии с порядковым номером этой вкладки. | Индекс табуляции как целое число |
Команда перемещения фокуса
Используется для перемещения фокуса в пределах окна. См. также действие moveFocus
.
Команда | Параметр | Описание | Значения |
---|---|---|---|
перемещение фокуса , мф | <направление> | Перемещение фокуса между панелями. | См. ниже принятые значения направления |
Принято направление
значения
-
вверх
,вниз
,влево
, иливправо
переместить фокус в заданном направление. -
first
перемещает фокус на первую листовую панель в дереве. -
предыдущая
перемещает фокус на последнюю использовавшуюся панель перед текущей панелью. -
nextInOrder
,previousInOrder
перемещает фокус на следующую или предыдущую панель в порядке создания.
Команда перемещения панели
Используется для перемещения панели внутри окна. См. также действие movePane
.
Команда | Параметр | Описание | Значения |
---|---|---|---|
передвижная панель , мп | --tab,-t <индекс> | Переместить активную панель на заданную вкладку в окне | Нулевой индекс вкладки, на которую следует переместить панель. |
Команда Swap-pane
Используется для изменения положения двух панелей в окне. См. также действие swapPane
.
Команда | Параметр | Описание | Значения |
---|---|---|---|
сменная панель | <направление> | Поменять местами панель с панелью в заданном направлении | См. ниже принятые значения направления |
Принятые значения направления
(это те же значения, что и подкоманда перемещения-фокуса
)
-
вверх
,вниз
,влево
иливправо
: Поменять местами активную панель с панелью в заданном направлении. -
first
: Поменять местами активную панель с первой листовой панелью в дереве. -
предыдущая
: Поменять местами активную панель с последней использованной панелью перед текущей панелью. -
nextInOrder
,previousInOrder
: Поменять местами активную панель со следующей или предыдущей панелью в порядке создания.
Примеры аргументов командной строки
Команды могут незначительно отличаться в зависимости от используемой командной строки.
Передача аргумента в оболочку по умолчанию
Чтобы запустить экземпляр терминала Windows и выполнить команду, вызовите wt.exe
, а затем свою команду.
Вот пример вызова терминала Windows для передачи аргумента команды ping для повторного отображения IP-адреса:
wt pinglearn.microsoft.com
Вот пример вызова Windows Terminal для открытия новой вкладки с командной строкой PowerShell, подтверждения вызова команды Start-Service и открытия другой новой вкладки с командной строкой Windows, открытой для /k
каталог:
wt новая вкладка PowerShell -c Start-Service ; новая вкладка cmd /k каталог
Нацеливание на определенное окно
Ниже приведены примеры того, как нацеливаться на определенные окна с помощью параметра --window,-w
.
- Командная строка
- PowerShell
- линукс
// Открыть новую вкладку с профилем по умолчанию в текущем окне вес -w 0 нт // Открыть новую вкладку в новом окне с профилем по умолчанию вес -w -1 нт // Открываем новую вкладку в первом созданном окне терминала с профилем по умолчанию вес -w 1 нт // Открываем новую вкладку в окне терминала с именем foo и профилем по умолчанию. Если foo не существует, создайте новое окно с именем foo. wt -w foo nt
Открыть новый экземпляр профиля
Чтобы открыть новый экземпляр терминала, в этом случае команда откроет профиль с именем «Ubuntu-18.04», введите:
- Командная строка
- PowerShell
- линукс
wt-p "Ubuntu-18.04"
Флаг -p
используется для указания профиля Windows Terminal, который следует открыть. Замените «Ubuntu-18.04» именем любого профиля терминала, который вы установили. Это всегда будет открывать новое окно. Терминал Windows еще не может открывать новые вкладки или панели в существующем экземпляре.
Выберите каталог
Чтобы указать папку, которая должна использоваться в качестве начального каталога для консоли, в данном случае это каталог d:\, введите:
- Командная строка
- PowerShell
- линукс
вес -d д:\
Несколько вкладок
Чтобы открыть новый экземпляр терминала с несколькими вкладками, введите:
- Командная строка
- PowerShell
- линукс
мас. ; ;
Чтобы открыть новый экземпляр терминала с несколькими вкладками, в данном случае профилем командной строки и профилем PowerShell, введите:
- Командная строка
- PowerShell
- линукс
wt -p "Командная строка" ; новая вкладка -p "Windows PowerShell"
Несколько панелей
Чтобы открыть новый экземпляр терминала с одной вкладкой, содержащей три панели с профилем командной строки, профилем PowerShell и вашим профилем по умолчанию, на котором запущена командная строка WSL, введите:
- Командная строка
- PowerShell
- линукс
wt -p "Командная строка" ; разделенная панель -p "Windows PowerShell" ; разделенная панель -H wsl.exe
Флаг -H
(или --horizontal
) указывает, что вы хотите, чтобы панели были разделены по горизонтали. Флаг -V
(или --vertical
) указывает, что вы хотите, чтобы панели были разделены по вертикали.
Несколько вкладок и панелей
Новая вкладка
и с разделенной панелью Команды
могут быть упорядочены для получения нескольких вкладок, каждая из которых имеет разделенные панели. Чтобы открыть новый экземпляр терминала с двумя вкладками, каждая с двумя панелями, на которых запущена командная строка и командная строка WSL, с каждой вкладкой в другом каталоге, введите:
- Командная строка
- PowerShell
- линукс
wt -p "Командная строка" ; разделенная панель -V wsl.exe ; новая вкладка -d c:\ ; разделенная панель -H -d c:\wsl.exe
Заголовок панели
Чтобы открыть новый экземпляр терминала с пользовательскими заголовками для каждой панели терминала, используйте аргумент --title
. Чтобы установить заголовок каждой панели при открытии нескольких вкладок, введите:
- Командная строка
- PowerShell
- линукс
wt --title tabname1 ; новая вкладка -p "Ubuntu-18.04" --title tabname2
Панели на одной и той же вкладке могут иметь разные заголовки, которые будут отражаться в заголовке вкладки в зависимости от того, какая панель находится в фокусе. Чтобы назвать независимые панели, вы можете установить заголовок после разделения панелей, введя:
- Командная строка
- PowerShell
- линукс
wt --title pane1 ; split-pane -p "Командная строка" --title pane2
Использование заголовка приложения
Чтобы открыть новый экземпляр терминала, позволяющий приложениям внутри него устанавливать заголовок вкладки путем отправки сообщений об изменении заголовка, используйте флаг --useApplicationTitle
. Чтобы подавить эти сообщения, используйте флаг --suppressApplicationTitle
. Если ни один из этих флагов не указан, поведение наследуется от настроек профиля. Чтобы открыть вкладку с заголовком имя вкладки
, которое не будет переопределено приложением, введите:
- Командная строка
- PowerShell
- линукс
wt --title имя вкладки --suppressApplicationTitle
Цвет вкладки
Чтобы открыть новый экземпляр терминала с пользовательскими цветами вкладки, используйте аргумент --tabColor
. Этот аргумент переопределяет значение, определенное в профиле, но его также можно переопределить с помощью палитры цветов на вкладке. В следующем примере создается новый терминал с двумя вкладками разных цветов:
- Командная строка
- PowerShell
- линукс
wt --tabColor #009999 ; новая вкладка --tabColor #f59218
Если для вкладки задан параметр --tabColor
, он связывается с первой панелью этой вкладки. Следовательно, на вкладке с несколькими панелями цвет будет применяться только в том случае, если первая панель находится в фокусе. Чтобы установить цвет вкладок для дополнительных панелей, вам также потребуется добавить параметр --tabColor
в подкоманду split-pane
. В приведенном ниже примере вкладка с двумя панелями создается с цветами вкладки, указанными для каждой панели:
wt new-tab --tabColor '#009999' `; разделенная панель --tabColor '# f59218'
Цветовая схема
Чтобы открыть новый экземпляр терминала с определенной цветовой схемой (вместо colorScheme
, заданной в профиле), используйте аргумент --colorScheme
. Этот аргумент переопределяет значение, определенное в профиле.
- Командная строка
- PowerShell
- линукс
wt --colorScheme Vintage ; split-pane --colorScheme "Танго Свет"
Фокус вкладки
Чтобы открыть новый экземпляр терминала с фокусом на определенной вкладке, используйте флаг -t
(или --target
) вместе с номером индекса вкладки. Чтобы открыть профиль по умолчанию на первой вкладке и профиль «Ubuntu-18.04», сфокусированный на второй вкладке ( -t 1
), введите:
- Командная строка
- PowerShell
- линукс
мас.; новая вкладка -p «Ubuntu-18.04»; фокус-вкладка -t 1
Примеры нескольких команд из PowerShell
Терминал Windows использует символ точки с запятой ;
в качестве разделителя для разделения команд в командной строке wt
. К сожалению, PowerShell также использует ;
в качестве разделителя команд. Чтобы обойти это, вы можете использовать следующие приемы для запуска нескольких команд wt
из PowerShell. Во всех следующих примерах новое окно терминала создается с тремя панелями: одна с запущенной командной строкой, одна с PowerShell и последняя с WSL.
В следующих примерах не используется start
для запуска командной строки. Вместо этого есть два других метода экранирования командной строки:
- Только экранирование точек с запятой, чтобы
PowerShell
проигнорировал их и передал прямо вwt
. - Использование
--%
, поэтому PowerShell будет рассматривать остальную часть командной строки как аргументы для приложения.
wt новая вкладка "cmd" `; разделенная панель -p "Windows PowerShell" `; разделенная панель -H wsl.exe
вес --% new-tab cmd ; разделенная панель -p "Windows PowerShell" ; разделенная панель -H wsl.exe
В обоих этих примерах только что созданное окно терминала Windows создаст окно, правильно проанализировав все предоставленные аргументы командной строки.
Однако эти методы не рекомендуются в настоящее время, поскольку PowerShell будет ждать закрытия вновь созданного окна терминала, прежде чем вернуть управление PowerShell. По умолчанию PowerShell всегда будет ждать закрытия приложений Магазина Windows (например, Windows Terminal), прежде чем вернуться к приглашению. Обратите внимание, что это отличается от поведения командной строки, которая немедленно вернется к приглашению.
Добавьте исполняемый файл терминала Windows в PATH
Чтобы добавить исполняемый файл терминала Windows (wt.exe) в PATH, включите его «псевдоним выполнения приложения» на странице «Управление псевдонимами выполнения приложения» в настройках Windows. Псевдоним Windows Terminal включен по умолчанию, но, возможно, стоит подтвердить, если у вас возникли проблемы с доступом к нему.
Если у вас по-прежнему возникают проблемы с доступом к псевдонимам выполнения приложений, вам может потребоваться проверить, содержит ли ваш PATH: %LOCALAPPDATA%\Microsoft\WindowsApps
. Не пытайтесь внести изменения в C:\Program Files\WindowsApps
.
Использование командной строки — Fedora Linux [Книга]
Многие задачи управления системой можно выполнять с помощью любого из графических интерфейсов пользователя, поставляемых с Fedora (например, GNOME или KDE). Тем не менее, большинство опытных пользователей предпочитают командную строку для работы по управлению системой, потому что они находят ее более быстрой, более согласованной между различными версиями Linux и более легкой для удаленного доступа. Командная строка также называется
приглашение оболочки , поскольку команды обрабатываются программой, называемой оболочкой; стандартной оболочкой в системе Fedora является
Оболочка Bourne-again ( bash ).
Как мне это сделать?
Если вы вошли в систему через графический интерфейс пользователя, получите доступ к командной строке через терминальную программу. Выберите пункт меню Приложения — Стандартные — Терминал (Система — Терминал в KDE) или щелкните правой кнопкой мыши фон рабочего стола и выберите
Консоль под KDE.
Совет
Если вы часто используете терминал, вы можете упростить его запуск: щелкните правой кнопкой мыши пункт «Терминал» в меню приложения и выберите «Добавить этот модуль запуска на панель». Новая панель. появится значок, который запустит новый терминал при нажатии.
Если вы вошли в систему через экран входа в символьный режим или через SSH, вам автоматически будет представлена командная строка.
Понимание приглашения оболочки
Стандартное приглашение оболочки выглядит так:
[chris@concord2 ~]$
Это сообщение является приглашением ввести команду. Он показывает имя пользователя ( chris
), используемый компьютер ( concord2
) и текущий рабочий каталог в файловой системе ( ~
, что означает домашний каталог пользователя). Последний символ подсказки,
$
указывает, что это приглашение обычного пользователя, в отличие от приглашения системного администратора, которое заканчивается
#
.
Ввод команд
Чтобы ввести команду, просто введите ее, а затем нажмите Enter, чтобы выполнить ее. Вывод команды появится после команды (при необходимости прокручивая экран), а когда команда будет выполнена, будет напечатано новое приглашение.
Чтобы отредактировать командную строку, используйте клавиши со стрелками влево и вправо для перемещения внутри строки и клавиши Backspace и Delete для удаления символов слева или справа от курсора соответственно. Чтобы вставить текст, просто введите его. Вы можете нажать Enter, когда курсор находится в любом месте строки, чтобы выполнить команду. Доступны другие клавиши редактирования; В Таблице 4-1 показаны наиболее полезные из них. 9Таблица 4-1. Полезные клавиши редактирования
Доступ к предыдущим командам
Вы можете прокручивать историю ранее введенных команд с помощью клавиш со стрелками вверх и вниз. Это позволяет легко повторно ввести команду либо точно так же, как вы вводили ее ранее, либо после редактирования.
Вы также можете найти предыдущую команду, нажав Ctrl-R (для обратный поиск ), а затем введя несколько символов, которые появляются в команде. Например, если в какой-то момент вы набрали cat
/etc/hosts
и вы нажали Ctrl-R и набрали hos
, cat
Появится команда /etc/hosts
(при условии, что никакие промежуточные команды не содержат последовательность букв hos
).
Получение приглашения root для ввода команд в качестве суперпользователя
учетная запись суперпользователя root также называется привилегированной учетной записью, поскольку на нее не распространяются ограничения безопасности, применяемые к учетным записям обычных пользователей. 9Доступ 1045 root требуется для многих команд системного администрирования. Хотя заманчиво постоянно использовать учетную запись root на однопользовательском компьютере, это неразумно, поскольку Fedora предполагает, что вы знаете, что делаете, и не будет запрашивать подтверждение, если вы введете учетную запись. опасная команда; он просто продолжит и выполнит его. Если вы используете учетную запись root , неправильная команда может нанести гораздо больший ущерб, чем та же команда, выполненная в обычной учетной записи.
Хотя вы можете напрямую войти в систему как пользователь root , обычно гораздо безопаснее использовать привилегию root только при необходимости, используя команду su
(переключение пользователя):
$su
Пароль:#
root-пароль
Подсказка оболочки изменится и будет заканчиваться знаком фунта ( #
) вместо знака доллара ( $
), когда вы находитесь в корень режим. Нажмите Ctrl-D или введите exit
, чтобы отказаться от доступа суперпользователя и вернуться к обычному приглашению оболочки.
Подсказка
В этой книге я буду использовать $
для обозначения любой подсказки обычного пользователя, пользователя
$
для конкретного указания пользователя
s подсказки и #
для указания подсказки root . Избегайте ввода команд как root без необходимости!
Сообщения об ошибках Linux
Многие команды Linux выводят сообщение, только если что-то пойдет не так. Например, если вы попытаетесь удалить файл с помощью команды rm , сообщение не будет отображаться, если файл успешно удален, но будет сгенерировано сообщение об ошибке, если файл не существует:
$rm
rm: невозможно удалить \Q
барбекю
барбекю
': Нет такого файла или каталога
Большинство сообщений об ошибках начинаются с имени команды, создавшей сообщение.
Выход из командной строки
Вы можете выйти из оболочки, нажав Ctrl-D или набрав exit
. Если вы используете окно терминала и у вас нет запущенных программ, вы можете просто закрыть окно с помощью кнопки X в строке заголовка.
Как это работает?
Приглашение оболочки управляется bash , оболочкой Bourne-again. bash получил свое название из-за того, что является преемником оригинала
Оболочка Unix, sh , также известная как оболочка Борна (по имени ее автора Стива Борна). bash — редактор команд, интерпретатор команд, контроллер заданий и язык программирования.
Когда bash получает команду, он разбивает ее на слова и использует
подстановка для расширения любых неоднозначных имен файлов. bash затем проверяет, является ли первое слово встроенной командой. Если нет, он рассматривает это как внешнюю команду или программу и просматривает список каталогов, чтобы найти эту программу. Он выполняет эту программу, передавая другие слова программе в качестве аргументов. Почти все команды Linux являются внешними программами.
Команды Linux обычно принимают три типа аргументов:
- Опции
Они начинаются с дефиса или двойного дефиса (
-
или--
) и изменить способ работы команды. Например,Команда ls
(list-files) будет включать в свой вывод скрытые файлы, если задан аргумент-a
, и выводит подробную информацию о файлах, если указан параметр-l
. Эти параметры можно использовать по отдельности, вместе в любом порядке или объединять после одного дефиса, если все они используют один дефис:$
лс-л
$лс -а
$лс-л-а
$лс -а -л
$лс-ал
$лс-ла
- Позиционные аргументы
Они имеют значение в соответствии с порядком, в котором они указаны. Например, команда
cp
(копировать) принимает два или более имен файлов:$
cp
один два
один
— это имя копируемого файла, адва
— это имя, которое будет присвоено новой копии. Если поменять местами два аргумента, смысл команды изменится. Опции могут быть размещены до, между или после позиционных аргументов; обычно позиции опций не имеют значения.- Опции со значением
Комбинируют параметры с позиционными аргументами. Опция со значением может быть помещена до или после других аргументов, но значение должно быть размещено непосредственно после опции.
Например,
Команда ls принимает параметр-w
(ширина вывода), который указывается вместе с числом, обозначающим желаемую ширину вывода в символах. Это можно комбинировать с-a
и-l
опции в любом порядке, если номер непосредственно следует за-w
опция:$
ls -a -l -w 60
$лс -ш 60 -ал
$лс -л -ш 60 -а
$лс -л -w60 -а
$ls -alw60
Как насчет.
..
…доступа к экрану в текстовом режиме при работающем графическом интерфейсе пользователя?
Fedora настроена так, чтобы вы могли войти в систему, используя дисплей в текстовом режиме, даже если запущен графический интерфейс пользователя. Фактически, вы можете войти в систему до шести раз, используя один и тот же или разные идентификаторы пользователей.
Ключ
Виртуальные терминалы (ВЦ). Есть 12 виртуальных терминалов, к которым можно легко получить доступ: с VT1 по VT6 настроены для входа в символьный режим, VT7 используется для графического входа, а с VT8 по VT12 обычно не используются.
Чтобы переключиться на конкретный VT, нажмите Ctrl-Alt и функциональную клавишу, соответствующую виртуальному терминалу, к которому вы хотите получить доступ (Ctrl-Alt-F1 для VT1, Ctrl-Alt-F7 для VT7 и т. д.).
Совет
На самом деле существует 64 виртуальных терминала, но виртуальные терминалы выше 12 недоступны напрямую с клавиатуры и поэтому используются редко.
Вы можете войти на несколько виртуальных машин одновременно и переключаться между ними. Это особенно полезно, когда вы вызываете документацию на одном виртуальном компьютере и вводите команды на другом.
…узнать, где находится программа?
Команды типа , , и , где предоставляют информацию о расположении программ.
тип сообщит вам, где находится команда, в подробном виде, а также укажет, хешировано ли расположение команды (хранится в оболочке для быстрого ознакомления, поскольку команда уже использовалась недавно). Если имеется более одной команды с одним и тем же именем, показанное местоположение будет первым, найденным с помощью ваших $PATH
:
$тип
кошка хэшируется (/bin/cat)
кат
который похож, но показывает только расположение команды:
$который
/бен/кат
кат
где покажет вам все местоположения для команды (а иногда их несколько, если установлены разные версии одной и той же программы), а также расположение документации по ее справочной странице:
$где
кошка: /bin/cat /usr/share/man/man1p/cat. 1p.gz /usr/share/man/man1/cat.1.gz
кат
…запуск графических программ?
Программы с графическим пользовательским интерфейсом запускаются точно так же, как и программы с символьным пользовательским интерфейсом. Программы с графическим интерфейсом используют
DISPLAY
переменная среды для определения доступности графического дисплея и подключения к этому дисплею. Некоторые программы, например
system-config-printer автоматически запустится с графическим или символьным пользовательским интерфейсом в зависимости от доступного типа дисплея.
…быстрый ввод одной команды?
При нажатии Alt-F2 откроется диалоговое окно «Выполнить приложение» (в
KDE, она называется «Выполнить команду»), которая позволяет вам ввести одну команду и запустить ее. Это наиболее полезно для запуска графических программ, которых нет в меню.
Вы также можете добавить на панель панели апплет, который делает то же самое.
…в чем разница между командами, утилитами, приложениями и программами?
Нет ни одного! Linux не делает различий между категориями программ.
…используете другую оболочку?
Fedora предлагает четыре различных командных интерпретатора:
тсш (он же тсш ),
Баш (также известный как
ш ),
кш и зш . Вы можете временно запустить другую оболочку, просто набрав имя оболочки:
$
чш
Нажмите Ctrl-D или введите exit
, чтобы вернуться в исходную оболочку. Вы можете навсегда изменить оболочку по умолчанию, используя
chsh
(сменить оболочку) команда:
$chsh
Пароль:
большой секрет
Новая оболочка [/bin/bash]:
/бин/кш
Шелл менялся.