0

Hadoop The definitive guide の例を再現しようとしていますが、どこが間違っているのかはわかりません。

#!/usr/bin/env bash
for year in /home/*
do
        echo -ne `basename $year .gz`"\t"
        gunzip -c $year | awk '{temp = substr($0, 88, 5) + 0; q = substr($0, 93, 1); if (temp !=9999 && q ~ /[01459] && temp > max) max = temp }
                          END {print max}'
done

私が得ているエラーは

awk: cmd. line:1: {temp = substr($0, 88, 5) + 0; q = substr($0, 93, 1); if (temp !=9999 && q ~ /[01459] && temp > max) max = temp }
awk: cmd. line:1:                                                                                                                   ^ unexpected newline or end of string
awk: cmd. line:2:                         END {print max}
awk: cmd. line:2:                                        ^ unexpected newline or end of string

また、さまざまな変更を試みましたが、機能しません。

4

1 に答える 1

0

そうあるべき

q ~ /[01459]/

終了スラッシュがありません。

于 2013-07-29T21:04:46.540 に答える