使用Date命令的Unix Shell脚本

时间:2017-01-05 19:35:48

标签: shell date unix format sh

好的,所以我正在尝试使用date命令将scrpit写入wc文件。例如,文件的格式如下: testfile20170104.gz

现在,文件设置为昨天的日期,格式为 yyyymmdd 。因此,如果今天是2017年1月5日,该文件将以yyyymmdd格式的前一天为1/4/2017,如上例所示。

通常只要输入以下内容来计算文件,只需输入: gzcat testfile20170104.gz | wc -l <​​/ strong>即可获得字数。

但是,我想要做的是运行一个脚本甚至是一个gzcat文件的for循环,而不是必须在命令行中复制和粘贴文件名,我想使用date命令输入put昨天的日期在文件名中,格式为yyyymmdd。

所以像这样的模板:

gzcat testfile * .gz | wc -l | date =“ - 1天”+%Y%m%d

现在我知道我上面的内容完全错了,但是你得到了照片。我想用date命令的输出替换'*',如果这有意义的话......

非常感谢任何帮助!

谢谢!

1 个答案:

答案 0 :(得分:0)

你想:

filename="testfile$( date -d yesterday +%Y%m%d ).gz"
zcat "$filename"