gpt4 book ai didi

shell - 查找在 shell 中的另一个文件的五天内创建的文件

转载 作者:行者123 更新时间:2023-12-04 23:55:07 24 4
gpt4 key购买 nike

我对编写脚本还是很陌生,所以请继续关注我,如果您有任何问题,请随时提出。

可以,然后呢:
我有一个文件,比如说 文件.txt

文件.txt 存在于目录/this/is/the/directory/file.txt

在一个单独的目录中存在 .log 文件,告诉我当 时会发生什么文件.txt 被创建。

fuubar.log、fuu.log、bar.log、this.log、that.log、some.log、other.log...这些日志的数量未知。

我需要收集所有发生的日志文件 +-5 天之文件.txt 正在创建的文件。

例如:
文件.txt 创建于 2013 年 7 月 7 日(不要注意日期格式)
我需要发生在 2013 年 7 月 2 日至 2013 年 7 月 12 日之间的日志文件。

有任何想法吗?

编辑:我对比较文件的日期以获得正确的日期更加困惑,我知道如何复制文件。

Perl 和 stat对我不可用

最佳答案

好吧,除非有人发布单行文章,否则可以让您开始!

# Get the date in you want to start listing files from using your
# sample file. This will assign the variable in the format of MMDDYYYY
$ start=$(date -d "-5 days" '+%m%d%Y' < <(date -r /this/is/the/directory/file.txt))

# Get the date in you want to end listing files from. using your
# sample file. This will assign the variable in the format of MMDDYYYY
$ end=$(date -d "+5 days" '+%m%d%Y' < <(date -r /this/is/the/directory/file.txt))

# Create two temp files. touch -t will force the timestamp on
# these files to match the content of variables
$ touch -t "$start" /tmp/s$$
$ touch -t "$end" /tmp/e$$

# Use these temp files timestamp as a pivot mechanism by find commands
# newer option. This will list files whose timestamp is in between our
# temp files timestamp which we captured from your sample file
$ find /path/to/files -type f -newer /tmp/s$$ -and -not -newer /tmp/e$$

关于shell - 查找在 shell 中的另一个文件的五天内创建的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17725526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com