PATH形式のリストを正規化する

LinuxBeginner
オンラインで実践に進む

はじめに

設定のエクスポートデータには、ディレクトリ名がコロン区切りの1行で保存されており、同じ項目が繰り返し含まれています。正規化したリストにすると、内容を確認したり比較したりしやすくなります。

このチャレンジでは、これまでに学んだテキスト処理コマンドだけを組み合わせます。区切り文字を変換し、行をソートし、隣接する重複行を削除して、結果を保存します。

正規化したディレクトリ一覧を作成する

現在の状況

/home/labex/project/path-audit/configured-path.txt には、コロン区切りの1行が保存されています。同じディレクトリ名が複数回含まれているものもあります。

作業範囲

  • コロンで区切られた各項目を、それぞれ別の行に変換します。
  • 各行をアルファベット順にソートします。
  • 重複するディレクトリ名は1つだけ残します。
  • 結果を path-directories.txt に保存します。

目標

ソート済みで重複のないディレクトリ一覧を作成します。

完了条件

  • path-directories.txt に、元のファイルに含まれる異なる4つのディレクトリ名が1行ずつ記載されていること。
  • 各行がアルファベット順に並んでいること。
  • 元のファイルが変更されていないこと。

ヒント

なぜ uniq の前に sort を実行するのですか?

uniq は隣接する重複行を削除します。先にソートすると、同じディレクトリ名が隣り合うようになります。

まとめ

区切り文字の変換、ソート、重複の削除、リダイレクトを組み合わせて、正規化した一覧を作成しました。

✨ 解答を確認して練習