6
我一直在经历一个在线UNIX
课程,并遇到了我坚持的这个问题。将不胜感激任何帮助!使用awk命令从文件中提取第一行
为您提供一组文件,其中每个文件都包含有关个人的个人详细信息。在下面的格式每个文件都摆出来,每个单独的一个文件:
name:Niko Tanaka age:41 occupation:Doctor
我知道答案必须是形式:
n=$(awk -F: ' / /{print }' filename)
我一直在经历一个在线UNIX
课程,并遇到了我坚持的这个问题。将不胜感激任何帮助!使用awk命令从文件中提取第一行
为您提供一组文件,其中每个文件都包含有关个人的个人详细信息。在下面的格式每个文件都摆出来,每个单独的一个文件:
name:Niko Tanaka age:41 occupation:Doctor
我知道答案必须是形式:
n=$(awk -F: ' / /{print }' filename)
n=$(awk -F: '/name/{print $2}' infile)
无论是内部/ /
是正则表达式。在这种情况下,您只想匹配包含'name'的行。
awk 'NR==1' filename
结果
name:Niko Tanaka
'AWK NR == 1',或者你有只打印名字? 'awk -F:'NR == 1 {print $ 2}'' – Kevin 2012-01-29 22:59:04
如果文件非常大,可以使用'awk'NR == 1 {print;退出}“,这样文件在第一行后就不再被读取了。 – fedorqui 2014-05-12 08:24:04