commandline - установка или получение текущего буфера командной строки
Синопсис
commandline [OPTIONS] [CMD]
Описание
commandline может быть использован для установки или получения текущего содержимого буфера командной строки.
Без параметров, commandline возвращает текущее значение командной строки.
С указанным CMD, буфер командной строки очищается и заменяется содержимым CMD.
Доступны следующие опции:
-
-Cили--cursorустанавливают или получают текущую позицию курсора, а не содержимое буфера. Если аргумент не указан, печатается текущая позиция курсора, иначе аргумент интерпретируется как новая позиция курсора. -
-fили--functionзаставляют все дополнительные аргументы интерпретироваться как функции ввода и помещать их в очередь, так что они будут считаны перед любыми дополнительными нажатиями клавиш. Эта опция не может быть комбинирована с другими опциями. См. bind для списка функций ввода.
Следующие опции изменяют способ, которым commandline обновляет буфер командной строки:
-
-aили--appendне удаляют текущую командную строку, добавляют указанную строку в конец -
-iили--insertне удаляют текущую командную строку, вставляют указанную строку в текущую позицию курсора -
-rили--replaceудаляют текущую командную строку и заменяют её указанной строкой (по умолчанию)
Следующие опции изменяют то, какая часть командной строки выводится или обновляется:
-
-bили--current-bufferвыбирают весь буфер, включая любые отображаемые автодополнения (по умолчанию) -
-jили--current-jobвыбирают текущую задачу - здесь однаjob- одна пайплайн. Останавливается на логических операторах или терминаторах (;,&или новых строках). -
-pили--current-processвыбирают текущий процесс - здесь одно простоеprocess. Останавливается на логических операторах, терминаторах или конвейере. -
-sили--current-selectionвыбирает текущий выделенный фрагмент -
-tили--current-tokenвыбирает текущий токен
Следующие опции изменяют способ, которым commandline выводит текущий буфер командной строки:
-
-cили--cut-at-cursorвыводит только выделение до текущей позиции курсора -
-oили--tokenizeтокенизирует выделение и выводит один токен типа строки на строку
Если commandline вызывается во время вызова для завершения заданной строки с использованием complete -C STRING, commandline будет считать указанную строку текущим содержимым командной строки.
Следующие опции выводят метаданные о состоянии командной строки:
-
-Lили--lineпечатает строку, на которой находится курсор, при этом самая верхняя строка начинается с 1 -
-Sили--search-modeимеет значение true, если командная строка выполняет поиск в истории -
-Pили--paging-modeимеет значение true, если командная строка отображает содержимое страницы, например, автодополнения
Пример
commandline -j $history[3] заменяет задачу под курсором третьим элементом из истории командной строки.
Если командная строка содержит
>_ echo $flounder >&2 | less; and echo $catfish
(с курсором на "o" в "flounder")
echo $flounder >& - первый процесс, less - второй и and echo $catfish - третий.
echo $flounder >&2 | less - первая задача, and echo $catfish - вторая.
$flounder - текущий токен.
Дополнительные примеры:
>_ commandline -t $flounder >_ commandline -ct $fl >_ commandline -b # or just commandline echo $flounder >&2 | less; and echo $catfish >_ commandline -p echo $flounder >&2 >_ commandline -j echo $flounder >&2 | less
© 2020 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.2/cmds/commandline.html