有一个包含几个 XML 文件的目录。
每个文件名的格式如下: yyyy-mm-dd-hh-mm-ss-AUFXXXXXXXXX.xml
一些 XML 文件名的编号与AUF之后的编号相同,因为它们已被修改。我想要一个 bash 脚本来识别这些类型的文件,通过检查时间戳来保留原始文件,并将修改后的文件移动到另一个文件夹。我正在尝试编写 bash 脚本来解决这个问题。这是我到目前为止所得到的:
#!/bin/bash
declare -a filelist
shopt -s extglob
for file in $(ls -tr1 *AUF*); do
filelist=(${filelist[@]} "$file")
echo "${file}"
done
部分输出:
2019-11-14-17-44-04-AUF19000276.xml
2019-11-15-09-12-01-AUF19000276.xml
2019-11-15-09-27-26-AUF19000276.xml
2019-11-15-09-28-51-AUF19000276.xml
2019-11-18-13-50-34-AUF19000296.xml
2019-11-20-16-45-14-AUF19000300.xml
2019-11-27-12-16-25-AUF19000292.xml
2019-11-27-12-19-50-AUF19000225.xml
2019-11-27-17-11-04-AUF19000300.xml
2019-11-28-09-40-44-AUF19000294.xml
2019-11-29-17-03-33-AUF19000305.xml
2019-11-29-17-04-43-AUF19000306.xml
2019-11-29-17-05-41-AUF19000306.xml
2019-12-02-12-02-20-AUF19000305.xml
2019-12-02-12-03-00-AUF19000305.xml
2019-12-03-09-22-06-AUF19000307.xml
2019-12-04-10-49-03-AUF19000308.xml
2019-12-05-09-23-54-AUF19000310.xml
2019-12-05-09-24-41-AUF19000310.xml
2019-12-09-13-12-31-AUF19000256.xml
2019-12-09-13-59-42-AUF19000256.xml
2019-12-09-15-29-25-AUF19000281.xml
2019-12-09-15-30-13-AUF19000281.xml
2019-12-09-15-34-07-AUF19000284.xml
2019-12-09-15-39-39-AUF18000346.xml
2019-12-09-15-40-21-AUF19000058.xml
2019-12-10-16-19-35-AUF19000312.xml
2019-12-11-11-58-55-AUF19000313.xml
例如:我想保留第一个创建的文件2019-11-14-17-44-04-AUF19000276.xml并将其他三个相同编号的文件移动到另一个目录。
我目前不知道如何检查数组并包含上述条件。很高兴有任何帮助!