-1

UNIXでファイル名が指定された場合、for sortとuniqのワンライナーはありますか? 私はグーグルで以下を見つけましたが、ソートされていません.また、以下のコマンドが何をしているのかわかりません..awkまたは他のUNIXツールを使用するより良い方法はありますか?

cut -d, -f1 file | uniq | xargs -I{} grep -m 1 "{}" file

余談ですが、WindowsとUNIXの両方で使用できるものはありますか?これは重要ではありませんが、確認するだけです..

C:\Users\Chola>sort -t "@" -k2,2 email-list.txt

入力テキストファイル:-

436485
422636
429228
427041
433414
425810
422636
431526
428808
4

1 に答える 1

4

ファイルが 1 行に 1 つの数字のみで構成されている場合:

sort -n FILENAME | uniq

また

sort -u -n FILENAME

(次のすべてをパイプする代わりに-u、コマンドに追加できます。)sortuniq

ファイルの 1 列だけを抽出し、その列を数値順に並べ替えて重複を削除する場合は、次のようにします。

cut -f7 FILENAME | sort -n | uniq

Cutは、列間に 1 つのタブがあると想定しています。ファイルが CSV の場合は、次のことができる可能性があります。

cut -f7 -d, FILENAME | sort -n | uniq

,ただし、ファイルのテキスト フィールドにがある場合は機能しません(CSV では で保護されます")。

列で並べ替えて、完全に重複する行のみを削除する場合は、次のようにします。

sort -k7,7n FILENAME | uniq

sort列が空白で区切られていると仮定します。繰り返しますが、 で区切りたい場合は,、次を使用できます。

sort -k7,7n -t, FILENAME | uniq
于 2013-01-20T01:33:53.177 に答える