-b、--以前
区切り文字は、ファイルの前のレコードの先頭に追加されます。
次の出力がわかりません。
$ echo -e "Hello\nNew\nWorld\n!" > file
$ tac file
!
World
New
Hello
$ tac -b file
!
World
NewHello
New
との間に改行文字がないのはなぜですかHello
?
ベストアンサー1
tac
レコードと区切り文字を使用してください。付属、デフォルトは対応するレコードの後です。これは、区切り文字の分離を実行するAWKなどの他のレコードベースのツールと比較して、わずかに直感的にずれます。
の場合、-b
改行文字が追加されたレコードは次のとおりです(元の順序で)。
Hello
\nNew
\nWorld
\n!
\n
逆方向出力は
\n\n!\nWorld\nNewHello
これはあなたが見る出力に対応します。
それ以外の場合、-b
レコードと追加された改行は次のようになります。
Hello\n
New\n
World\n
!\n
逆方向出力は
!\nWorld\nNew\nHello\n