2016-04-27 7 views
1

lastコマンドをawkの一致する行ごとにどのように実行できますか?awkの最後の実行[Solaris]

ypcat passwd | awk -F":" '/:John/{ system("last" $1) }' 

私はジョンと命名されているが、それは何も印刷されないすべてのユーザーのためにlastコマンドを実行しようとしています。

答えて

3

あなたのアプローチは間違っている、awkはシェルではありません。

ypcat passwd | awk -F":" '/:John /{print $1}' | xargs last 

か::

ypcat passwd | awk -F":" '/:John /{print $1}' | xargs -n 1 last 
をawkには、それは/これは lastが何であるかに応じて、あなたが望むかもしれ用のシェルとは何かあるんから、他のツールを呼び出すことではないテキストを操作するために設計されています
4

last後に空白を挿入します。

ypcat passwd | awk -F":" '/:John/{system("last " $1)}' 
関連する問題