私は以下を試してみました。
awk '{print $1}' your_file | sort | uniq
ただし、出力は予想とは異なります。私が興味のある列値の例は次のとおりです。
"Non-cancer illness code, self-reported"
"Birth weight known"
各フィールドのスペースは問題を引き起こしますか?では、どうすれば解決できますか?ありがとうございます!
答え1
抽出されたファイルの最初のタブ文字を使用してフィールドを区切るには、フィールド区切り文字がタブに設定されていることをawk
確認してください。以下のように\t
オプション引数をオプションに指定することでこれを行うことができます-F
。
awk -F '\t' '{ print $1 }' file
cut
タブがデフォルトの区切り文字であり、他のクールなタスクを実行する必要はないので、ここで使用するのも比較的簡単です。
cut -f 1 file
sort | uniq
一意の行を取得するには渡し、sort -u
入力を減らすには渡します。
あなたが経験している問題は、awk
あなたがデフォルトで実行されているということですスペース(タブまたはスペースの実行)を区切り文字として使用し、最初のフィールドにスペースが含まれているため、ユーティリティは最初のフィールドを誤って解釈します。言葉最初のフィールドとして。