- blogs:
- cles::blog
2018/01/23
bash の ANSI-C Quoting 「$'~' 」が便利
sh
bash で ANSI-C Quoting という記法を見つけたのでメモ。
書き方はシングルクォートでの前に $ を置いて $'~' のようにするだけです。
一瞬何かの typo に見えますが、こうしておくことで文字列中で C 言語のエスケープシーケンスを使えるようになります。
ちなみにクォートでは必ずシングルクォートでなければなりません。
Bash Reference Manual: ANSI-C Quoting
3.1.2.4 ANSI-C Quoting
Words of the form $'string' are treated specially. The word expands to string, with backslash-escaped characters replaced as specified by the ANSI C standard.
これまで bash でタブ文字が欲しいときには echo -e や printf コマンドを使っていましたが、これを使うとシンプルに記述できますね。
sort や join のデリミタにタブ文字を渡したい時にも便利です。
$ echo -ne 'a\na\n'
a
a
$ printf 'a\na\n'
a
a
$ echo -n $'a\na\n'
a
a
bash も長年使っていましたが、こんな記法があるとは知りませんでした。
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/9926
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . svn でコミットしたらエラーが出たので(872)
2 . アーロンチェアのポスチャーフィットを修理(740)
3 . RT810 の DHCP サーバを WPAD に対応させる(738)
4 . 福岡銀がデマの投稿者への刑事告訴を検討中(711)
5 . シャープの空気清浄加湿器のキュルキュル音対策は PTFE テープで(618)
2 . アーロンチェアのポスチャーフィットを修理(740)
3 . RT810 の DHCP サーバを WPAD に対応させる(738)
4 . 福岡銀がデマの投稿者への刑事告訴を検討中(711)
5 . シャープの空気清浄加湿器のキュルキュル音対策は PTFE テープで(618)
cles::blogについて
Referrers