Bash でタブとかの制御文字を入力するやり方をたまに聞かれるのでメモしておく。
Bash のバージョン。
$ bash --version GNU bash, version 5.1.4(1)-release (x86_64-apple-darwin19.6.0) Copyright (C) 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Bash でタブとかの制御文字を入力する
Bash でタブとかの制御文字を入力することはそんなに多くはないけどときどきはあると思うのでやり方をメモしておく。
Ctrl-v + 制御文字
Bash とかのシェルは Ctrl-v を入力してから目的の制御文字をタイプすると制御文字を入力できる。
たとえば a b みたいに a と b の間にタブを入れるなら echo コマンドの引数は ', a, Ctrl-v, Tab, b, ' の順番にキーをタイプする。
タブじゃなくて他の制御文字でも同じ。
$ echo 'a b' a b
$'\文字'
Bash は $'\文字' をバックスラッシュ (\) でエスケープしている文字に置換する。
たとえば a b みたいに a と b の間にタブを入れるなら echo コマンドの引数は $'a\tb' を文字どおりに入力する。
$'a\tb' a b