Help us understand the problem. What is going on with this article?

bash read コマンドを利用する場合には、基本的に -r オプションを使うべき。

More than 5 years have passed since last update.

read コマンドは、 \ があると基本的にそれを無視してしまう。

(read line <<< 'hello\nworld'; echo $line)
# => hellonworld

-r オプションを付与すると、バックスラッシュの特殊な挙動を抑制し、ただの文字として扱うことができる。

(read -r line <<< 'hello\nworld'; echo $line)
# => hello\nworld

-r オプションで抑制される特殊な挙動は何があるかというと、 line continuation と、IFSの抑制がある模様。

(read line <<EOF; echo $line)
hello \
world
EOF
# => hello world

(read x y <<< 'foo\ bar baz'; echo "<$x><$y>")
# => <foo bar><baz>

参考: http://wiki.bash-hackers.org/commands/builtin/read

xincere-inc
株式会社シンシアは不動産の賃貸・売買仲介を行う不動産屋です。 一般的にライフステージが変化するタイミング(入学・就職・結婚・出産)で、人は住まいを変えます。その重要な出来事で発生する 不動産の売買・賃貸 に伴う手続きなどを“”、我々はその時代における最善の方法を用いて、より簡単に・効率化していきます。
https://residence.xincere.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away