3列目の単語で文字列を把握する方法

3列目の単語で文字列を把握する方法

3番目の列では、数値が4より小さい文字列を見つけようとします。私のデータ:

52343523412312;52343523412312;4 
52343523412312;52343523412312;4
52343523412312;52343523412312;4
52343523262412;52343523262412;3

私はAWKを試しました。

awk -F; '$3!="4"'

しかし、まだエラーが発生します。awk: option requires an argument -- F

私は何が間違っていましたか?

答え1

何。シェルはコマンド区切り文字を使用するため、コマンドに;これを引用するか、エスケープを使用する必要があります。また、数字なので\引用しないでください。4最後に「4に等しくない」ではなく、「4より小さい」が欲しい。要約すると、次のようにできます。

awk -F';' '$3<4'

答え2

Python

#!/usr/bin/python

k=open('filename','r')
for i in k:
    gh=i.split(';')
    if (int(gh[2]) < 4):
        print i.strip()

出力

python scr.py 
52343523262412;52343523262412;3



awk ===> Alread best solution provided Below is just with if condition

 awk -F ";" '{if($3 < 4){print $0}}' filename
52343523262412;52343523262412;3

関連情報