2021 Feb. 27.
2021 Feb. 21.
(bash上にて)
シェルにヌル文字・改行文字・タブ文字を与えるには、ドル記号を前置してシングルクォーテーションで括る。
$'\0' null文字
$'\n' 改行
$'\t' タブ文字
これは文字列にも使える
$'abc\nde'
findコマンドでヒットした、null文字で区切られたファイルリストをreadコマンドで読み込んで処理する
while read -d $'\0' File; do // DO SOMETHING done < <(find DIR/ -print0)
/etc/passwdからawkで取り出し、改行で区切られたユーザー名リストをreadコマンドで読み込んで処理する
UserList=$(cat /etc/passwd | awk -F ":" '{print $1}') while read -d $'\n' User; do echo $User done < <(echo "$UserList")
echoコマンドに与える文字列のいろいろなパターン
echo abc$'\n'de abc de echo "abc$'\n'de" abc$'\n'de echo 'abc$'\n'de' abc$nde echo -e abc$'\n'de abc de echo -e "abc$'\n'de" abc$' 'de echo -e 'abc$'\n'de' abc$nde echo abc\nde abcnde echo "abc\nde" abc\nde echo 'abc\nde' abc\nde echo -e abc\nde abcnde echo -e "abc\nde" abc de echo -e 'abc\nde' abc de $ echo $abc\nde nde echo $"abc\nde" abc\nde echo $'abc\nde' abc de echo -e $abc\nde nde echo -e $"abc\nde" abc de echo -e $'abc\nde' abc de