ユーザーIDのユーザーを見つける必要があります。認証システムの戻り結果は次のとおりです。これで、bashスクリプトを使用して正確な数の行を抽出する必要があります。 5でも25でもない..
------------
ID LOGIN
------------
28 user1
25 user2
5 user3
使用するとgrep 5
2つの行ができますが、「5」の行が必要です。
どんなアイデアがありますか?
ベストアンサー1
これを行う方法はいくつかあります。
IMHOの最良の方法はを使用することです。awk
これはフィールドを処理するのに役立ちます。
grep
以下に基づいたソリューションが必要な場合:
grep -w '^5'
正確な単語と一致するように-w
指示するため、「52」と一致しません。grep
"^" は grep に行の先頭から 5 を検索するように指示します。たとえば、先行スペースがある場合、検索は失敗します。
解決策はawk
次のとおりです。
awk '$1 == 5'
ユーザー名だけが必要な場合は、2番目の列は次のようになります。
awk '$1 == 5 {print $2}'
数値以外の文字列を検索する場合は、文字列を二重引用符で囲みます。
awk '$1 == "abc" {print $2}'