【问题标题】:Change date directories with old date in a batch批量更改具有旧日期的日期目录
【发布时间】:2014-11-05 22:16:23
【问题描述】:

我最近按主题将一堆文件分类到目录中。我正在尝试将目录的日期更改为与目录中最新文件的修改时间相同。我有一个我认为应该工作的脚本,但它没有。

for DIRECTORY in * ; do FILE=`ls -1 --sort=time "$DIRECTORY" | tail -n 1` ; DATE=`stat -c %y "$DIRECTORY/$FILE" | tr '.' ' ' | awk '{print $1,$2}' ` ; echo $DATE $DIRECTORY ; touch -m -d "$DATE" "$DIRECTORY" ; done

它似乎应该工作,但它没有。有什么帮助吗?

【问题讨论】:

    标签: linux bash directory touch


    【解决方案1】:

    只需运行此命令:

    latestFile=$(ls -1t | sed q)
    for i in *; do touch -r "$latestFile"; done
    

    !该命令与带空格的文件不兼容!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多