gpt4 book ai didi

linux - 按日期和文件名将文件排序到目录

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:15:37 24 4
gpt4 key购买 nike

我得到的文件名总是以 Y-M 开头(例如 2014-01)现在所有文件都在一个目录中,我想将它们拆分为根年份目录 (2014) 和按月划分的子目录(01,02 等。)

这是我到目前为止手动执行的操作:

   find /dirlocation/ -name "2014-12*" -type f -exec mv {} /pathtocp/2014/12 \;

而且我每次都会手动更改日期和 cp 目录..

有人可以帮我写一个 bash 脚本让它自动发生吗?

谢谢!

最佳答案

另一种解决方案:

#!/bin/bash
for f in $(find . -type f -regextype posix-extended -regex "./[0-9]{4}-[0-9]{2}.*"); do
y=${f:2:4}
m=${f:7:2}
mkdir -p "$y/$m" && mv "$f" "$y/$m/$f"
done

ASSUMPTIONS:

  • The bash script is run from the path the files reside in

关于linux - 按日期和文件名将文件排序到目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30693801/

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