#!/usr/bin/env bash
for year in all/*
do
echo -ne `basename $year .gz`"\t"
gunzip -c $year | \
awk '{ temp = substr($0, 88, 5) + 0;
quality = substr($0, 93, 1);
if (temp !=9999 && quality ~ /[01459]/ && temp > max) max = temp }
END { print max }'
done
我正在遵循Hadoop-Definite Guide 4th Edition中的练习。我已经完成了第一项练习,并且可以使用,但是我不理解质量的含义〜/ [01459] /。 最佳答案
根据http://www.math.utah.edu/docs/info/gawk_5.html
和
因此,如果quality ~ /[01459]/
包含true
,quality
,1
和4
中的任何一个,则5
为9
关于hadoop - 在awk中使[01459]感到困惑,这是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32508920/