您好,我正在使用hp unix,我正在尝试使用for循环遍历最近20天(相对于当前日期)。
for (( c=1; c<=5; c++ ))
do
day$c=$(perl -e 'use POSIX;print strftime "%Y%m%d\n",localtime time-86400*$c;')
done
later do some operations with day$c
问题是由于某种奇怪的原因86400 * $ c没有执行,任何人都可以指出错误吗?提前致谢 。
最佳答案
尝试不同的引用:
day$c=$(perl -e "use POSIX;print strftime qq(%Y%m%d\n),localtime time-86400*$c;")
(我不熟悉HPUX,但是看起来
$c
没有被外壳插入。)编辑:或稍短:
day$c=$(perl -MPOSIX -le "print strftime '%Y%m%d',localtime time-86400*$c;")