1. やりたいこと
ファイル内の文字列を以下の条件に整形したい
- 五十音順(漢字は例外可)
- 重複する行は削除(排除)
2. ローカル環境
以下の環境で実施した。
- OS:Windows10
- エミュレーター:GitBash
- 対象ファイル:hashtag.txt
3. 実践
以下コマンドを利用する
- cat
- sort
- uniq
3-1. ファイル確認
「cat」コマンドを実行してファイル内容を確認
$ cat hashtag.txt #タイッツー手芸部 #タイッツーお嬢様部 #タイッツー登山部 #タイッツー手芸部 #タイッツー虫部 #タイッツー猫部 #タイッツーダイエット部 #タイッツー卵割るの下手部 #タイッツー一次創作部 #タイッツー創作部 #タイッツーゲーム部 #タイッツー料理部 #タイッツー美術部 #タイッツー漫研 #タイッツー筋トレ部 #タイッツー飲酒部 #タイッツー短歌部 #タイッツー写真部 #タイッツー犬部 #タイッツークソゲー部 #タイッツー睡眠障害部 #タイッツー学校 #タイッツーダイエット部 #タイッツー筋トレ部 #タイッツー手芸部 #タイッツー美術部 #タイッツー料理部 #タイッツー飲酒部 #タイッツー軽音部 #タイッツーカラオケ部 #タイッツー学校 #タイッツーダイエット部 #タイッツ一筋トレ部 #タイッツー手芸部 #タイッツー美術部 #タイッツー料理部 #タイッツー飲酒部 #タイツ短歌部 #タイツ文芸部 #タイッツー写真部 #タイッツーお嬢様部 #タイッツー俳句部
なんかこんな感じ。
3-2. ソートする
さっそくソート(並び替え)を行う。 「sort」コマンドを実行しよう。
$ sort hashtag.txt #タイッツーお嬢様部 #タイッツーお嬢様部 #タイッツーカラオケ部 #タイッツークソゲー部 #タイッツーゲーム部 #タイッツーダイエット部 #タイッツーダイエット部 #タイッツーダイエット部 #タイッツー一次創作部 #タイッツー俳句部 #タイッツー写真部 #タイッツー写真部 #タイッツー創作部 #タイッツー卵割るの下手部 #タイッツー学校 #タイッツー学校 #タイッツー手芸部 #タイッツー手芸部 #タイッツー手芸部 #タイッツー手芸部 #タイッツー料理部 #タイッツー料理部 #タイッツー料理部 #タイッツー漫研 #タイッツー犬部 #タイッツー猫部 #タイッツー登山部 #タイッツー睡眠障害部 #タイッツー短歌部 #タイッツー筋トレ部 #タイッツー筋トレ部 #タイッツー美術部 #タイッツー美術部 #タイッツー美術部 #タイッツー虫部 #タイッツー軽音部 #タイッツー飲酒部 #タイッツー飲酒部 #タイッツー飲酒部 #タイッツ一筋トレ部 #タイッツー文芸部 #タイッツー短歌部
さっきより見やすくなったし、重複も確認できるようになった。
しかし、これだけではファイルに保存できていない。
以下のコマンドを実行して、念のため別ファイル「hashtag1.txt」に保存しよう。
$ sort hashtag.txt > hashtag1.txt hogehoge ~/git/taittsuu_wiki $
今度はファイルの中身はプロンプトに出力されないため、プロンプトが返ってきたらOK。
念のため「hashtag1.txt」のファイルの中身がソートされているか確認。
#タイッツーお嬢様部 #タイッツーお嬢様部 #タイッツーカラオケ部 #タイッツークソゲー部 #タイッツーゲーム部 #タイッツーダイエット部 #タイッツーダイエット部 #タイッツーダイエット部 #タイッツー一次創作部 #タイッツー俳句部 #タイッツー写真部 #タイッツー写真部 #タイッツー創作部 #タイッツー卵割るの下手部 #タイッツー学校 #タイッツー学校 #タイッツー手芸部 #タイッツー手芸部 #タイッツー手芸部 #タイッツー手芸部 #タイッツー料理部 #タイッツー料理部 #タイッツー料理部 #タイッツー漫研 #タイッツー犬部 #タイッツー猫部 #タイッツー登山部 #タイッツー睡眠障害部 #タイッツー短歌部 #タイッツー筋トレ部 #タイッツー筋トレ部 #タイッツー美術部 #タイッツー美術部 #タイッツー美術部 #タイッツー虫部 #タイッツー軽音部 #タイッツー飲酒部 #タイッツー飲酒部 #タイッツー飲酒部 #タイッツ一筋トレ部 #タイッツー文芸部 #タイッツー短歌部
3-3. 重複行を排除する
先ほど作成した「hashtag1.txt」に対して「uniq」を実行する。
$ uniq hashtag1.txt #タイッツーお嬢様部 #タイッツーカラオケ部 #タイッツークソゲー部 #タイッツーゲーム部 #タイッツーダイエット部 #タイッツー一次創作部 #タイッツー俳句部 #タイッツー写真部 #タイッツー創作部 #タイッツー卵割るの下手部 #タイッツー学校 #タイッツー手芸部 #タイッツー料理部 #タイッツー漫研 #タイッツー犬部 #タイッツー猫部 #タイッツー登山部 #タイッツー睡眠障害部 #タイッツー短歌部 #タイッツー筋トレ部 #タイッツー美術部 #タイッツー虫部 #タイッツー軽音部 #タイッツー飲酒部 #タイッツ一筋トレ部 #タイッツー文芸部 #タイッツー短歌部
すっきりしたね。
先ほど同様、これだけでは保存されていないので、別ファイル「hashtag2.txt」に保存する。
$ uniq hashtag1.txt > hashtag2.txt hogehoge ~/git/taittsuu_wiki $
プロンプトが返ってきたらOK。
最後に重複行がないことを確認。
$ cat hashtag2.txt #タイッツーお嬢様部 #タイッツーカラオケ部 #タイッツークソゲー部 #タイッツーゲーム部 #タイッツーダイエット部 #タイッツー一次創作部 #タイッツー俳句部 #タイッツー写真部 #タイッツー創作部 #タイッツー卵割るの下手部 #タイッツー学校 #タイッツー手芸部 #タイッツー料理部 #タイッツー漫研 #タイッツー犬部 #タイッツー猫部 #タイッツー登山部 #タイッツー睡眠障害部 #タイッツー短歌部 #タイッツー筋トレ部 #タイッツー美術部 #タイッツー虫部 #タイッツー軽音部 #タイッツー飲酒部 #タイッツ一筋トレ部 #タイッツー文芸部 #タイッツー短歌部
これで、目標達成!