linux - 搜索具有确切日期的多个文件,然后 tar 和 log

标签 linux bash tar

我有一个简单的问题.. 首先我搜索了一个名为“HAHAHA-1, HAHAHA-2, HAHAHA-3”(只是一个例子)的多个文件,其中包含最后 2 天前的确切日期。然后我会给他们涂 tar 。这是我的示例脚本,它正在运行..

 stat -c"%z;%n" * | grep "`date +%Y-%m-%d -d '2 days ago'`" | grep "HAHAHA-*" | awk -F';' '{ print $2 }' | xargs tar -zcvf TAR_$(date '+%Y_%m_%d' --date='2 days ago').tar.gz

现在我的问题是如何添加此脚本以将其也保存到日志文件中?

LOG-$(date '+%Y_%m_%d' --date='2 days ago').log

例子:

tar -ztvf TAR_2014_02_01.tar.gz

输出:

HAHAHA-1
HAHAHA-2
HAHAHA-3

vi LOG-2014_02_01.log

输出:

HAHAHA-1
HAHAHA-2
HAHAHA-3

有什么想法吗?谢谢!

最佳答案

您可以执行 tar -tvzf 并将其内容重定向到日志文件中。

dt=$(date '+%Y_%m_%d' --date='2 days ago')

tar -tvzf "TAR_${dt}.tar.gz" > "LOG-${dt}.log"

关于linux - 搜索具有确切日期的多个文件,然后 tar 和 log,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21520813/

相关文章:

c - SDL 将窗口保存为 BMP

linux - bash 找到前导 '.' 的返回路径如何从返回字符串中删除这个字符?

python - 在 Python 中定期获取 bash 命令的输出

linux - 解压时数据丢失

tar - 使用 docker Alpine 时出现 "tar: not found in archive"错误

Java 进程将自身发送到后台

java - 升级亚马逊aws上的tomcat版本

c++ - GDB 报告崩溃但程序运行正常

linux - 如何读取 CGI Bash 脚本中的 HTTP header 值

image - 在 Docker 镜像中搜索特定文件