LINUX.ORG.RU

как за'bind'ить вставку результата выполнения чего-либо в bash


0

1

Может я, конечно, велосипед изобретаю, но... Охота назначить вывод имени текущей директории (т.е. basename `pwd` / basename $PWD) на какую-нибудь удобную кнопку, чтобы в случае необходимости вставлять при наборе команд.
Бинд типа

bind '"\e[24~":"basename `pwd`\C-M"'
приводит к выполнению команды как если бы я её вводил сам. Но хотелось бы получить вывод команды в строке ввода, без её выполнения.
bind '"\e[24~":"`echo 123`"'
Просто выводит указанный текст как есть.

Так-с. В $PROMPT_COMMAND можно засунуть bind с нужными опциями, но как всунуть туда переменную — не имею понятия.

GotF ★★★★★
()
Ответ на: комментарий от frozen_twilight

Удалённые смотри. Похоже, корявый способ с подстановкой в ~/.inputrc — самое простое решение.

GotF ★★★★★
()

Нашёл в закромах еб#нутый альтернативный способ выполнения команд через bind, но во многом это аналог уже опробованного.
Похоже, придётся остановиться на алиасе

alias cwd='echo -n ${PWD/*\//}'
и, где требуется подстановка, писать `cwd`.

frozen_twilight ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.