0

17,500 行を少し超えるテキスト ドキュメント(1 MB、TXT ファイル) があります。私ができることを望んでいるのは、これらの行を文字の長さでソートし、同じファイル (その後保存される) または完全に新しいファイルに出力することです。事前に知っている限り、どちらでも問題なく動作します。

私のコーディング/端末能力が不足しているため、OS XのAutomatorを介して何らかの方法でそれを行うことができればボーナスポイント.

4

2 に答える 2

0

awk '{printf "%7d %s\n", length($0), $0}' ファイル | 並べ替え -n | sed -e 's/^....... //' > newfile

各行をその前の長さで出力する 8 文字のフィールドソートで出力し、各行の先頭から 8 文字を数値的に取り除きます

これは、ファイルの各行が 1,000 万文字未満の場合に機能します。あなたのファイルは1MB未満なので、それは真実でなければなりません.

于 2011-05-24T02:43:09.880 に答える
0

ファイルを XML に変換し、XSLT を使用して、文字列の長さに基づいてエントリを並べ替えました。それは本当に長い道のりでしたが、うまくいきました。

于 2010-08-11T19:23:38.780 に答える