awkで最初の文字を-7文字にカットする方法は?

awkで最初の文字を-7文字にカットする方法は?

複数行を含むファイルがあります。

ここで2番目の列はですが、user_id最後の7つの数字はランダムな数字です。

実際の身分証明書を取得するには、切り取る必要があります。

1st character to the -7 characterだから私が必要とするのは、各行の2番目の列を取得することです。

awkの機能を検索しましたが、substr自分で作業を実行できないようです。

それでは、awkで最初の文字を-7文字にカットする方法は?

ベストアンサー1

awk '{ print substr($2,1,length($2)-7) }'

length($2) <= 7 の場合、出力は得られません。最小長が必要ですか?その場合は、awkでmin()関数を定義できます。

awk 'function min(a,b){return a<b?b:a}  ..<rest of code>..'

おすすめ記事