「未接続」で、日付が今日より90日早い購読者のみを表示する必要があります。
この目的のために、次のコマンドが使用されます。
cat vfsubscriber_20170817.csv | sed -e 's/^"//' -e '1d' | nawk -F '",' '{if ( (substr($11,2,4) == 2017) && ( substr($11,2,8) -lt $dm )&&($9=="\"unconnected") ) print $1,substr($11,2,8),$dm}' dm=$(perl -e 'use
POSIX qw(strftime); print strftime "%Y%m%d",localtime(time()- 3600*24*90);') > ${EXTRACT_FILE}
問題は、この式が評価されないことです。( substr($11,2,8) -lt $dm )
dm=$(perl -e 'use
POSIX qw(strftime); print strftime "%Y%m%d",localtime(time()- 3600*24*90);')
結果は「20170520」で正確です。
コマンドでこの式を正しく評価して比較するのに役立ちます。
ベストアンサー1
dm=$( )
awkの外部で評価するには、次のようにします。
... | nawk -v dm=$(perl ... ) ' ... '
そしてawkでは使用しないでください-lt
。<