• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C言語で書き込んだファイルの重複行の削除と行の並び変えるプログラミング)

C言語でファイルの重複行削除と並び変えプログラミング

このQ&Aのポイント
  • C言語で書き込んだファイルの重複行を削除し、行を並び変えるプログラムを作成したいです。
  • ファイルには重複行がありますが、これを削除し、値の小さな順に行を並び変えたいです。
  • UNIXコマンドをC言語のプログラム内で使用して、重複行を削除し並び変える方法を知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.2

-uオプションのあるsortコマンドだったら、uniqコマンドを使わずに $ sort -u 0.txt > 00.txt でいいような。 0.txt~100.txtが同じディレクトリにあるとして、シェルがbashの場合の例。 $ for x in *.txt; do sort -u $x > 0$x; done csh系のシェルだったらforeachを使う。

s3104s
質問者

お礼

$ for x in *.txt; do sort -u $x > 0$x; done というコマンドで見事に ファイルの編集ができました。 このご回答を参考に シェルについてもっと勉強します。 どうもありがとうございました。

その他の回答 (1)

  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

Cで作らなくてもコマンドだけで可能ですけど。 sort < 0.txt |uniq >00.txt

s3104s
質問者

補足

知らなかったです。 ありがとうございます。 もしこのファイルが 0.txt, 1.txt, 2.txt, ... ,100.txt と100個以上ある状況で それら全てのファイルをソーティング、重複行削除したい場合 こういったコマンドだけで 済ませることは可能なのでしょうか?