「分かりそう」で「分からない」でも「分かった」気になれるLinuxコマンド辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるLinuxコマンド辞典

tac

スポンサーリンク

何するコマンド?

ファイルの中身を下から上に表示するときに使うコマンド



書き方

tac [オプション] [対象のファイル(複数指定可)]



オプション

オプション説明
-b区切り文字を後ろの単語に含める。例えば「a【区切り文字】b」とあった場合オプション未指定時は「a【区切り文字】」と「b」に分かれるが「-b」指定時は「a」と「【区切り文字】b」に分かれる
-r区切り文字を正規表現でしている……らしい
-s逆順にするための区切り文字を指定する

補足事項

「tac」コマンドの使い方ですが、例えば中身が

1,A,B,C
2,D,E,F
3,G,H,I


の「hoge.txt」があった場合

tac hoge.txt

を実行すると

3,G,H,I
2,D,E,F
1,A,B,C


が表示されます。
上下逆になりました。

「-s」オプションを指定して

tac -s, hoge.txt

を実行すると


H,G,F
3,E,D,C
2,B,A,1,


と表示されます。

これはカンマを区切り文字に指定したため

「1,」「A,」「B,」「C(改行)2,」「D,」「E,」「F(改行)3,」「G,」「H,」「I(改行)

と分割されて並び替えが起こったためです。

「I
」「H,」「G,」「F
3,」「E,」「D,」「C
2,」「B,」「A,」「1,」


になった状態ですね。

さらに、この状態で「-b」オプションを指定して

tac -s, -b hoge.txt

を実行すると

,I
,H,G,F
3,E,D,C
2,B,A1


と表示されます。

これは

「1」「,A」「,B」「,C(改行)2」「,D」「,E」「,F(改行)3」「,G」「,H」「,I(改行)

と分割されて並び替えが起こったためです。

「,I
」「,H」「,G」「,F
3」「,E」「,D」「,C
2」「,B」「,A」「1」


になった状態ですね。

対象のファイルを指定しないで

tac [オプション]

と打った場合、画面からの入力を待ちます……が、どんな使いどころがあるのかは、よく分かりません。

ちなみに「cat」の逆で「tac」のイメージです。
「cat」コマンド同様ファイルを結合することもできますよ。

例えば

■hoge1.txt
1,A,B,C
2,D,E,F
3,G,H,I


■hoge2.txt
4,J,K,L
5,M,N,O


があって

tac hoge1.txt hoge2.txt

を実行すると、結果は

3,G,H,I
2,D,E,F
1,A,B,C
5,M,N,O
4,J,K,L


に なります。
上下が逆になって合体しました。

スポンサーリンク


書籍画像