カーソルの外観を次のように変更できます。
printf "\x1b[\x31 q" # block :)
printf "\x1b[\x35 q" # ibeam :)
ただし、変数に割り当てて%s
拡張機能を使用するとprintf
機能しません。
CURSOR="\x1b[\x3%s q"
printf ${CURSOR} 1 # block :(
printf ${CURSOR} 5 # ibeam :(
どうすれば解決できますか?
ベストアンサー1
\x31
は文字1
で\x35
is5
なので、この場合はエスケープシーケンスを使用する必要はありません。
CURSOR="\x1b[%s q"
printf "${CURSOR}" 1
printf "${CURSOR}" 5