![명령줄에 문자열 넣기](https://linux55.com/image/86946/%EB%AA%85%EB%A0%B9%EC%A4%84%EC%97%90%20%EB%AC%B8%EC%9E%90%EC%97%B4%20%EB%84%A3%EA%B8%B0.png)
pgdown 내 기록(예: 4dos/4nt 등)을 나열하는 탐색 창에 바인딩된 메뉴를 표시하는 bash 기능을 만들고 있습니다 . 한 행이 항상 강조 표시되도록 이 작업을 수행했습니다.
$pos는 기록에서 목록이 시작되기를 원하는 곳입니다.
$ function hidown (){ if [ "$down" -gt 1 ]; then ((--down)); else down=100; fi ; hismenu_down "$down"; }
$ bind -x '"\e[6~":"hidowm"'
$ down=100
`
function hismenu_down()
{
pos=$1; hilength=10; hirange="$(($hilength+$pos))";
hisstring=$(history | tail -n $hirange)
for ((i=hilength; i>=0; --i)); do
if [ $i == 6 ]; then tput setaf 7; else tput setaf 6; fi;
tput cup $i 55;
printf "$hisstring" | tail -n "$(($i+$pos))" | head -n1 | cut -c1-105;
done; tput sgr0; tput rc;
}
강조 표시된 텍스트를 명령줄에 출력하고 싶기 때문에 Enter를 입력하거나 Enter를 눌러 명령을 실행하기 전에 텍스트를 편집하면 됩니다.
또한 명령줄에서 코드를 제거하기 위해 일시적으로 키를 바인딩하고 esc(그리고 기록 목록에서 코드를 제거하기 위한 다른 작업도 가능) 이후에 기본값에 바인딩하기 위해 동일한 키를 다시 바인딩합니다.
하지만 나는 이것을 스스로 알아낼 수 있습니다. 내가 요구하는 것은 이것입니다. 명령줄에 문자열을 넣는 방법은 무엇입니까?