Э. Сивер, С. Спейнауэр, С. Фиггинс, Дж. П. Хекман - Linux cправочник - 3-е издание (1114666), страница 81
Текст из файла (страница 81)
также unalias.aliasГлава 7. bash: командный интерпретатор Борна546bgbg \jobIDs]Перевести текущее задание (или несколько заданий) в фоновый режим. См. раздел «Управление заданиями» далее вэтой главе.bindbind [options]bind [options] key.functionОтобразить связки или связать клавиши с функциями, такими как движение курсора или редактирование строки.Типичный синтаксис задания клавиш (keys): "\C-t" для<Ctrl>+<T> и "M-t" или "\et" для Esc Т (кавычки необходимы для экранирования escape-последовательностей). Именафункций можно просмотреть, указав параметр —1.Параметры—f filenameДобавить связки из файла filename.
Формат описанийдолжен быть идентичен формату, применяемому при задании связок через параметры.—1 Перечислить все функции Headline (которые являютсяфункциями, связываемыми с клавиатурными сочетаниями).—m keymapЗадать клавиатурную карту для последующих связок.Возможные варианты: emacs, emacs-standard, emacsmeta, emacs-ctlx, vi, vi-move, vi-command и vi-insert.—p Перечислить все функции и связанные с ними сочетания клавиш в формате, который устанавливается длязадания связок.—q functionПеречислить связки для функции function,-г keyУдалить все связки для сочетания key.—s Перечислить все макросы и связанные с ними сочетанияклавиш в формате, который используется для заданиясвязок.—u functionУдалить все связки для указанной функции.Встроенные команды547-v Перечислить все Readline-переменные (настройки, влияющие на редактирование журнала и строк) и их текущие значения в формате, применяемом для установкипеременных.bind—х key.commandСвязать сочетание с командой интерпретатора (новаявозможность; поддерживается не всеми версиями bash).-Р Перечислить все сочетания и функции, с которыми онисвязаны.—S Перечислить все макросы и сочетания, с которыми онисвязаны.—V Перечислить все Readline-переменные (настройки, влияющие на редактирование журнала и строк) и их текущие значения.ПримерПривязать сочетание <Ctrl>+<T> к функции copy-forwardmove, которая копирует часть слова, следующую за курсором, для последующей вставки:$ bind "\C-t":copy-forward-movebreak [n]breakВыход из цикла for, while или until самой глубокой вложенности или из п циклов самой глубокой вложенности.
Такжевыход из списка select.builtin command [arguments}builtinВыполнить встроенную команду (command) интерпретатора. Используется при вызове встроенных команд в сценариях с таким же именем.case stringinregex)commandsesaccase548Глава 7. bash: командный интерпретатор БорнаcaseЕсли строка string соответствует регулярному выражениюregex, выполнить следующие команды (commands). Продолжать перебор регулярных выражений, пока не будет получен положительный результат сравнения со строкой (в качестве последнего регулярного выражения можно использовать «*» для обработки строк, для которых не найдено соответствующее регулярное выражение).cdcd [dir]Команда без аргументов меняет текущий рабочий каталог надомашний каталог пользователя.
В ином случае происходитсмена рабочего каталога на каталог dir. Если dir являетсяотносительным путем, но находится не в данном каталоге,происходит поиск по переменной CDPATH.commandcommand [options] command [arguments]Выполнить команду command; не выполнять поиск функций (т.
е. команда не будет выполнена, если она не являетсявстроенной или не найдена в путях переменной PATH). Кодвозврата равен коду возврата выполняемой команды, за исключением тех случаев, когда команда не найдена - тогда кодвозврата равен 127.—р Искать команду в каталогах по умолчанию, игнорируязначение переменной PATH.— Все последующие строки считаются аргументами, а непараметрами.continuecontinue [n]Принудительно перейти к следующей итерации цикла for,while или until, пропустив команды, которые еще не быливыполнены в данной итерации.
Если задан численный параметр, пропустить п итераций цикла.declaredeclare [options] [name[=value]]typeset [options] [name[=value]]Отобразить или установить переменные. Параметры, предваряемые знаком +, а не —, имеют противоположное значение.—а Считать следующие имена именами массивов.Встроенные команды-f Считать следующие имена именами функций.—1 Считать переменную целочисленной и вычислить ее значение.549declare-Р Вывести имена и значения всех переменных и функцийинтерпретатора; при использовании —р дополнительныепараметры игнорируются.—г Не допускать последующего сброса значений переменных.—х Отметить переменные для последующего экспорта.—F Отобразить имена всех функций интерпретатора; не совершать никаких действий помимо этого.dirs [options]dirsОтобразить каталоги, расположенные в стеке в результатеиспользования pushd/popd.Параметры+entryОтобразить элемент стека с номером entry (первый элемент имеет порядковый номер 0).—entryОтобразить элемент стека с номером entry (отсчет отконца списка).—1 Подробный список.disown [options] \jobIDs]disownПродолжить выполнение задачи, отделив ее от интерпретатора.
По умолчанию не включать задачу в список активных,не отображать в командах jobs и fg. Если указан ключ -h,задача опознается, но не завершает свою работу при завершении работы породившей ее копии интерпретатора.Параметры—а Выполнить для всех заданий.-h He передавать задаче сигнал SIGHUP, получаемый интерпретатором.echo [options] [string]Печать строки на стандартный вывод с завершающим символом новой строки. Если строка (string) опущена, печатаетсяechoГлава 7. bash: командный интерпретатор Борна550echoсимвол новой строки.
В интерпретаторе bash echo являетсяпсевдонимом print —. См. также описание команды echo вглаве 3 «Команды Linux».—е Включить распознавание escape-последовательностей.\а Звуковой сигнал\Ь Забой\сПодавление символа новой строки (идентично —п)\f Новая страница\п Символ новой строки\г Возврат каретки\t Горизонтальная табуляция\vВертикальная табуляция\\ Обратный слэш\пппСимвол, ASCII-код которого равен восьмеричномузначению ппп.\xnnnСимвол, ASCII-код которого равен шестнадцатеричному значению ппп.—п Не добавлять символ новой строки при печати.—Е Отключить распознавание escape-последовательностей.enableenable [options] [built-in...]Разрешить (с параметром -п - запретить) применение встроенных команд интерпретатора.
Если опущен параметр builtin либо указан параметр —р, отобразить доступные встроенные команды; если задан параметр —а, отобразить состояниевсех встроенных команд. Пользователь может отключатьвстроенные команды интерпретатора, чтобы заменить ихсобственными реализациями.Параметры—а Перечислить все встроенные команды - допустимые изапрещенные к применению.—n builtinЗапретить использование указанной команды.—р Перечислить допустимые команды.Встроенные команды551-s Ограничить перечисление специальными встроеннымикомандами, определяемыми стандартом POSIX.enableevaleval [command args...}Выполнить команду command, передав ей аргументы args.exec [options] [command]execВыполнить команду в рамках текущего процесса, не создавая нового процесса, exec также служит для открытия, закрытия и копирования файловых дескрипторов.Параметры—а патеВызвать указанную команду с именем пате.—с Удалить все переменные среды для процесса при выполнении новой команды.—1 Приравнивать новый процесс ко входу пользователя всистему.Примеры$ trap 'exec 2>&-' 0$ exec /bin/tcsh$ exec < infileЗакрыть стандартный поток ошибок,когда сценарий интерпретаторазавершит работу (сигнал 0)Заменить текущий интерпретаторинтерпретатором С shellНазначить infile стандартным вводомexit [n]Принудительно завершить выполнение сценария с кодом га(например, exit 1).
Параметр п может принимать значение О(успешное завершение) и ненулевые значения (завершение сошибкой). Если значение га не указано, код возврата будетравен коду возврата последней выполненной команды. Команду exit можно запускать из командной строки для завершения текущего сеанса работы.Примерif [ $# -eq 0 ]; thenecho "Usage: $0 [-с] [-d] file(s)"exit 1# Error statusfiexit552exportГлава 7. bash: командный интерпретатор Борнаexport [options] [variables]export [options] [name=[value]].
. .Передать (экспортировать) значение одной или несколькихпеременных окружения (variables), сделав переменные глобальными (по умолчанию они локальны). Например, в сценарии определяется переменная, которая должна быть экспортирована, чтобы другие программы, выполняемые сценарием, могли использовать ее. Если не заданы переменные,команда export перечисляет переменные, уже экспортированные в данном интерпретаторе. Если задано имя (пате) изначение (value), происходит присваивание значения переменной с указанным именем.Параметры— Считать все последующие строки аргументами, а не параметрами.—f Считать, что имена в списке variables являются именами функций.—п Удалить переменную из области экспортированных.—р Перечислить переменные, экспортированные в данноминтерпретаторе.fcfc [options] [first] [last]fc -e - [old=new] [command]Отобразить или редактировать команды из журнала команд(параметры —1 и -е являются взаимоисключающими).
Команда fc предоставляет возможности, аналогичные работе сжурналом команд в интерпретаторе С shell и с командой !.Параметры first и last являются номерами или строками,определяющими интервал отображения или редактирования команд. Если опущен параметр last, fc работает только содной строкой (номер которой определяется параметромfirst1). Если параметр first также опущен, происходит редактирование последней команды или перечисление последних 16 команд. Вторая форма использования fc позволяетвосстановить команду из журнала, заменить строку old настроку new, а затем выполнить измененную команду.