シェルスクリプトでファイルや標準出力を最終行から逆順に出力する「tac」コマンド
はじめに
Coding Games で遊んでいたときに標準入力で受け取った内容を逆に処理しないといけないことがありました。
めったに使うことはないのですが「tac」コマンドを使ったので、取り上げてみたいと思います。
検証環境
準備
Linux環境であれば、おそらくすでにインストール済みです。
Mac環境の場合、デフォルトではインストールされていないそうです。
僕の環境にはインストールされていましたが、おそらく以下のコマンドでインストールされたと思われます。
以下のコマンドで、 GNU のコアコマンドを一式インストールしてくれます。
使い方
はじめに触れましたが、ファイルや標準出力を最終行から逆順に出力できます。
例を上げてみます。
seq
の実行結果が逆に出力されました。めでたしめでたし。。。とはならないですね。
この例だと sort -nr
でも十分ではないか?と思われてしまいます。
別のサンプルファイルを作成します。
Bashシェルスクリプトでランダムな数列を生成する2つの方法 を参考にランダムな数値のファイルを作成します。
ファイルや標準出力の内容が逆に出力されていることがわかります。
ひとこと
実際あんまりつかうことないんですよね。
以前 sed
で 開始アドレス、終了アドレス と組み合わせてなにかしようとしたときに逆順にしてから sed
すると処理しやすくて大発見や!と思っていたんですが、どんなときに使ったのか思い出せず…
ディスカッション
コメント一覧
まだ、コメントがありません