内容目录
find /backup -type f -name "MPS.DB1C.20240425*"
得到
/backup/2024-04-30/123/MPS.DB1C.20240425081416
/backup/2024-04-30/123/MPS.DB1C.20240425001410
/backup/2024-05-01/123/MPS.DB1C.20240425041413
/backup/2024-04-27/123/MPS.DB1C.20240425201502
/backup/2024-04-27/123/MPS.DB1C.20240425161422
/backup/2024-04-27/123/MPS.DB1C.20240425235504
/backup/2024-04-27/123/MPS.DB1C.20240425121419
/backup/2024-05-02/123/MPS.DB1C.20240425200717
根据最后的时间数20240425081416进行排序
根据文件名中的时间戳对查找到的文件进行排序,可以使用 find
命令结合 sort
命令。这里时间戳是文件名的一部分,我们可以提取出时间戳并按其排序。
以下是具体的步骤:
- 使用
find
命令查找符合条件的文件。 - 使用
awk
命令提取文件名中的时间戳。 - 使用
sort
命令对时间戳排序。 - 输出排序后的文件列表。
以下是完整的命令:
find /data/ai_rvm/upload/mps-backup -type f -name "MPS.DB1C.20240425*" \
| awk -F'/' '{print $0, substr($NF, 9)}' \
| sort -k2 \
| awk '{print $1}'
解释各个部分的功能:
find /data/ai_rvm/upload/mps-backup -type f -name "MPS.DB1C.20240425*"
:查找符合条件的文件。awk -F'/' '{print $0, substr($NF, 9)}'
:使用斜杠/
作为分隔符,提取文件名中的时间戳并保留完整路径。substr($NF, 9)
提取文件名中第 9 个字符开始的部分,即时间戳。sort -k2
:按提取出的时间戳进行排序。awk '{print $1}'
:仅输出排序后的文件路径。
运行该命令后,将获得按时间戳排序的文件列表。
近期评论