【问题标题】:Ksh script, copy files created after a specifc dateKsh 脚本,复制特定日期之后创建的文件
【发布时间】:2013-11-11 09:52:53
【问题描述】:

我正在尝试编写一个小脚本来检索一些文件。 我要做的是从报告中复制文件,但仅复制为特定日期创建的文件(例如:仅在 11 月 11 日创建的文件)。

您知道如何执行此操作吗?

【问题讨论】:

    标签: ksh cp


    【解决方案1】:

    老实说,我不知道这是否适用于 ksh,我已经在 bash 和 zsh 中尝试过。

    困难的操作是检索所有文件,例如今天更改的文件

    find . -type f -newermt 2013-11-11 ! -newermt 2013-11-12 >list
    

    ...现在你有了一个列表,所以你可以迭代它并将每个条目复制到任何你想要的地方

    while read file; do
      cp "$file" $destination
    done <list
    

    【讨论】:

    • 其实我要创建的文件都是只读的,所以看今天有没有变化并不重要
    • 你可以尝试newerct而不是newermt
    • 其实我已经 : - find: invalid predicate -newerct' and - find: invalid predicate -newermt'
    • @user1058398: -newermt-newerct 不在 POSIX 标准中,@Albero Zaccagni 可能指的是 GNU/Linux 版本(它与 shell 无关)。请查看 -mtime-mmin 选项。
    猜你喜欢
    • 2020-08-23
    • 2013-05-11
    • 2017-07-02
    • 2020-12-19
    • 2019-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多