2012-01-29 8 views
6

私はオンラインのUNIXコースを通過しています。助けていただければ幸いです!awkコマンドを使用してファイルから最初の行を抽出します

各ファイルには、個人に関する個人情報が含まれています。私は答えは形にしておく必要があります知っている

name:Niko Tanaka 
age:41 
occupation:Doctor 

n=$(awk -F: ' / /{print }' filename) 
+6

'awkのNR == '1'、またはあなただけの名前を印刷することがありますか? 'awk -F: 'NR == 1 {print $ 2}' ' – Kevin

+2

ファイルが非常に大きい場合は、' awk'を実行すると良いでしょう。NR == 1 {print; exit} ''を実行して、最初の行の後にファイルが読み込まれなくなります。 – fedorqui

答えて

4
n=$(awk -F: '/name/{print $2}' infile) 

の内部にあるものは何でも各ファイルは、個体あたり1つのファイルで、次の形式でレイアウトされています/ /は正規表現です。この場合、 'name'を含む行に一致させたいだけです。

16
awk 'NR==1' filename 

結果

name:Niko Tanaka 
関連する問題