read -r とはどういう意味ですか?

read -r とはどういう意味ですか?

理解するためにもう一つの答え(グレンジャックマン):

find / -type d -print0 | while read -r -d '' dir; do ls -ltr "$dir" | sed '$!d'; done

最初のステップは、-rコマンドオプションの使い方を理解することですread

一度だけするだけで十分だと思います。

man read

オプションが何を意味するのかを調べましたが、-rマニュアルページにオプションの説明がまったく含まれていないことを知ってグーグルをしました。いくつかのread -t例がありますread -pがありませんread -r

ベストアンサー1

スタンドアロンコマンドはありませんread。代わりに組み込みシェルなので、マニュアルページに記載されていますbash

read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]

        ︙
    -r
      バックスラッシュはエスケープ文字として機能しません。バックスラッシュは行の一部と見なされます。特に、バックスラッシュ - 改行ペアは行連続で使用できません。

したがって、要約すると、末尾のreadバックスラッシュ文字を使用して長い行を分割することは通常許可され、その行は通常書き直されます。このやや驚くべき動作はを使用して無効にすることができます-r

おすすめ記事