Инструменты пользователя

Инструменты сайта


linux:overall:bash:cli

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
linux:overall:bash:cli [2021/08/18 14:51]
admin
— (текущий)
Строка 1: Строка 1:
-====== Оболочка ====== 
- 
-Born again shell - усовершенствованная оболочка Bourne shell.\\ 
-Командный процессор, работающий, как правило, в интерактивном режиме в текстовом окне, так же, может читать команды из файла, т.е. [[:linux:overall:bash:scripts|написание скриптов]].\\ 
- 
- 
-===== Общее ===== 
----- 
-  * **history** - история команд 
- 
- 
-===== Формы команд ===== 
----- 
-  * **cmd &** - выполнить в фоновом режиме. 
-  * **{cmd1; cmd2}** - выполнить группой, в текущей оболочке. 
-  * **(cmd1; cmd2)** - выполнить группой, в подоболочке. 
-  * **cmd1 | cmd2** - направить выход **cmd1** на вход **cmd2**. 
-  * **cmd1 `cmd2`** - выход **cmd2** в аргументами в **cmd1**. 
-  * **cmd1 $(cmd2)** - тоже самое, по стандарту POSIX. 
-  * **cmd $(выражение)** - арифметический результат **выражения**, аргументами в **cmd**. 
-  * **cmd1 && cmd2** - логическое **И** 
-  * **cmd1 || cmd2** - логическое **ИЛИ**. 
-  * **!cmd** - инверсия кода результата. 
-<code bash> # Выполнить указанные команды в фоне 
-$ nroff file > file.txt & 
- 
-# Выполнить команда последовательно 
-$ cd; ls 
- 
-# Переадресация результатов 
-$ (date; who; pwd) > logfile 
- 
-# Отсортировать, подготовить и вывести результат 
-$ sort file | pr -3 | lpr 
- 
-# Отобразить эхом сообщение об ошибке 
-$ grep 'XX file' || echo "XX not found" 
-</code> 
- 
- 
-===== Переадресация ввода/вывода ===== 
----- 
- 
-|0|Ввод|stdin|Клавиатура| 
-|1|Вывод|stdout|Экран терминала| 
-|2|Вывод ошибок|stderr|Экран терминала| 
- 
-  * **cmd > file** - перезаписать выводом команды файл. 
-  * **cmd >> file** - присоединить вывод команды к файлу. 
-  * **cmd < file** - исходные данные для команды из файла. 
-  * **cmd 2> file** - вывод только **ошибок** в файл. 
-  * **cmd &> file** - вывод **данных и ошибок** в файл **(&> /dev/null - подавление вывода)**. 
- 
- 
-==== Специальные имена файлов ==== 
----- 
-  * **/dev/(stdin|stdout|stderr)** - дубликаты 0,1,2. 
-  * **/dev/fd/<n>** - дескриптор файла <n> 
-  * **/dev/(tcp|udp)/<host>/<port>** - оболочка устанавливает соединение, используя полученный дескриптор для В/Вывода 
- 
- 
-===== Внутренние команды ===== 
----- 
-Часть из приведенных команд, имеет аналогичные исполняемые файлы в ОС, но это не одно и тоже. 
- 
-==== Ввод/вывод ==== 
----- 
-  * **echo** - выводит выражение или переменную stdout. 
-  * **printf** - форматированный вывод 
-  * **read** - читает значение из **stdin** 
- 
-==== Файловая система ==== 
----- 
-  * **cd** - сменить текущий каталог 
-  * **pwd** - текущий каталог 
-  * **pushd, popd, dirs** - работа с каталогами 
- 
-==== Действия над переменными ==== 
----- 
-  * **getopts** - разбор переменных, переданных из командной строки 
-  * **let** - арифметические операции над переменными 
-  * **eval** - транслирует список аргументов в команды 
-  * **set** - изменяет значение внутренних переменных скрипта 
-  * **unset** - удаляет переменную 
-  * **export** - сделать переменную доступной дочерним процессам 
-  * **declare, typeset** - задают (и накладывают) ограничения на переменные 
- 
-==== Управление сценарием ==== 
----- 
-  * **source, . (точка)** - запуск указанного сценария 
-  * **exit** - завершение работы сценария 
-  * **exec** - заменяет текущий процесс новым 
-  * **shopt** - позволяет изменять ключи оболочки "на лету" 
- 
-==== Управление запущенными задачами ==== 
----- 
-  * **jobs** - список задач, запущенных в оболочке (информация по номеру) 
-  * **fg** - вернуть текущее задание из фонового режима (или на указанный номер) 
-  * **bg** - перенести текущее задание в фоновый режим 
-  * **wait** - ожидает завершение фоновых задач 
-  * **kill** - прервать выполнение задания 
- 
- 
-===== Переменные окружения ===== 
----- 
- 
-Временная, локальная переменная (Очистится при окончании сессии): 
-<code bash> 
-myVar=Value 
-echo myVar</code> 
- 
-Для долгосрочного хранения, нужно добавить ее в файл **.bashrc**, в домашней директории: 
-<code bash>export myVar=Value</code> 
-После чего, нужно обновить конфигурацию командой **source .bashrc** 
- 
- 
- 
-===== Горячие клавиши ===== 
----- 
-  * **Ctrl + A (E)** - перемещает курсор в начало (конец) строки 
-  * **Ctrl + Y** - вставить из (своего) буфера 
-  * **Ctrl + U (W)** - копирует в буфер всю строку (слово) ДО курсора (k-после курсора) 
-  * **Ctrl + S (P)** - приостановить (возобновить) вывод 
-  * **Ctrl + L** - очистить экран (clear) 
-  * **Ctrl + R** - поиск по ранее введенным командам 
  
linux/overall/bash/cli.1629298290.txt.gz · Последнее изменение: 2021/08/18 14:51 — admin