awk -F: '$0=$1 " uid="$3' /etc/passwd
この場合、awk の方が簡単です。
-F は、フィールドセパレーターを :
として定義します
あなたが望むのは1列目と3列目です。 $0
をビルドします 出力形式を提供します。
これは、強力な awk の非常に基本的な使い方です。この種の問題に頻繁に直面する場合は、いくつかのチュートリアルを読むことをお勧めします。
今回は魚が釣れました。もし私があなただったら、釣り方について調べてみます。
cut
これにはいいです:
cut -d: -f1 /etc/passwd
これは「:
を使用して切り取る」という意味です 区切り記号として、/etc/passwd
の各行の最初のフィールドを除くすべて ファイル".
最良の選択肢は次のとおりだと思います:
grep "/bin/bash" /etc/passwd | cut -d':' -f1