ちょっと先の未来クイズ第4問

WindowsXPです。
テキストファイル、A.TXTがあり、10000行くらいなのですが、
行単位で並べ替えて、重複している同じものがあれば、これを1行にまとめたいのです。
並べ替えだけならば、MSDOSで、

sort A.TXT > outfile.TXT

でいけそうですが、重複行をまとめることは出来そうにありません。

バッチファイルで処理をしたいのでMSDOSで捜しているのですが方法はないのでしょうか。
MSDOSに限らないとすれば、何か簡単にできる方法はありますか。
何かスクリプトみたいな感じで出来るといろいろと応用が出来ていいのですが。


関連して、WindowsXPでも、PERLが使えると聞きました。
WEBで捜しましたが、どうもどれがいいのか、また、インストール方法もよくわかりません。
フリーで使える、Windows上のPERL、あるいは、MSDOS以上に使い勝手のよいスクリプトがあれば、教えてください。

A 回答 (5件)

UNIX 系のコマンドとして、そのものズバリ、uniq というのがあります。


使い方はこうです。

sort A.txt | uniq > outfile.txt

フリーウェアとしていろいろなのが出ていますが、とりあえず Vector のを。
http://www.vector.co.jp/soft/dos/util/se044213.h …

UNIX 系のさまざまなコマンドを MS-DOS 上でも使えるようにする GNU utilities for Win32 もあります。

この回答への補足

ご紹介いただいたサイトからDLした UNIQ ですが、残念ながら、

sort A.txt | uniq > outfile.txt

では、機能しません。
パイプを使えないようです。説明を見ると、
sort a.txt
とすると、a.txt自身が書き換えられ、別の出力ファイルを指定したいときは、
sort a.txt/outfile.txt
とするようです。

わたしの方でも、パイプが使えるものを捜してみますが、
もし、おわかりでしたら、教えていただけませんでしょうか。

補足日時:2010/04/17 18:01
    • good
    • 0
この回答へのお礼

お返事ありがとうございました。
早速uniqをDLしました。
GNUもあるのですね。
これは面白そうです。

お礼日時:2010/04/17 17:18

GNU の sort 互換のなら -u オプションがあります


sort -u A.TXT > outfile.TXT
でいいはず。
    • good
    • 0
この回答へのお礼

MSDOSについているsortには、このようなオプションはありません。

お礼日時:2010/04/18 00:13

#2です。


> UNIQ以外にも有用なものっていろいろとあるのでしょうか。
どこかのディレクトリに埋もれてるファイルを探し出す[WhereIs]などがありましたが、
なんせMS-DOSVer6.2の頃ですから、エクスプローラやDIRコマンドに実装されてますね。

#1さんのパイプ処理がうまく行かないのは、SORTにA.txtを放り込む指定が抜けてるからだと思います。
sort < A.txt | uniq > outfile.txt
じゃなかったですかね?
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
sort < A.txt | uniq > outfile.txt
でも、やはりだめですね。
このuniqは、パイプには対応していないようです。

それで、わたしの方で調べたところ、
yu
というソフトがありました。
http://www.vector.co.jp/soft/dos/util/se006090.h …

これであれば、普通にパイプが使えて、
sort A.txt | yu > outfile.txt
でOKでした。

それにしてもパイプが使えないなんて、ちょっとびっくりでしたよ。
そんなむずかしいソフトでもないのにね。
ありがとうございました。
ほかによさそうなソフトがありましたら、また、教えてください。

お礼日時:2010/04/18 00:11

Windows Script Host(WSH)が使えますので


wsh 入門で検索してみてください。
    • good
    • 0
この回答へのお礼

WSHというのがあるのですね。
わたしはVBScriptは使えるので、これは知っていると便利かもしれませんね。
ありがとうございました。

お礼日時:2010/04/17 17:21

MS-DOSで動作する[UNIQ]をダウンロードして使うのは?



昔、ASCIIさんのコマンドがあったなと思ってたら
VectorさんにWin98対応が出てました。
    • good
    • 0
この回答へのお礼

お返事ありがとうございました。
早速UNIQをDLしました。
UNIQ以外にも有用なものっていろいろとあるのでしょうか。

お礼日時:2010/04/17 17:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報