uniq -c
出現番号をスペースで区切ります。これはcut
では困難です。 またはawk
後で分離します。
1000_A1\tB1\n
___1_A2\tB2\n
この問題は、sed -r 's/^ *([0-9]+)/\1\t/'
を使用して解決できます。 区切り文字をタブに変更します。次に、cut -f1
戻る可能性があります:
1000\tA1\tB1\n
1\tA2\tB2\n
ただし、uniq -c
を使用するのが一般的な使用法のようです。 タブで番号を区切ります。この機能がないのはなぜですか?他にもっと簡単な方法はありますか?
承認された回答:
<number><space><field 1 name><tab><field 2 name>
のような形式になっているようです 、入力がfield 1 name
でソートされていることを確認したい 。それが必要な場合は、最初の数字の部分を削除して、最初の列の残りの部分の並べ替えを確認します。
echo "$input" | sed -r 's/^ *[^ ]+ //' | sort -c -k1,1