开发者社区> 问答> 正文

shell根据文件名日期时间取文件列表

用shell脚本怎么取
我的文件是yyyyMMdd+2位序号的xml
例如:
/app/test/2015112001.xml
/app/test/2015112002.xml
/app/test/2015112401.xml
/app/test/2015112402.xml
/app/test/2015112403.xml
我需要取出最近7天的文件列表,或者是某几天的文件的列表

展开
收起
杨冬芳 2016-07-15 10:43:45 2777 0
1 条回答
写回答
取消 提交回答
  • IT从业

    $ cat a.sh

    !/bin/sh

    beg_date=date -d "$1" +%s
    end_date=date -d "$2" +%s

    if [[ -z $1 ]]||[[ -z $2 ]];then
    echo "Usage: $0 YYYYMMDD YYYYMMDD"
    exit 0;
    fi
    if [[ ${beg_date} > ${end_date} ]];then
    echo "The end_date < beg_date ;Please input the right date,example: $0 20140101 20140301"
    exit 0;
    fi
    for (( i=${beg_date};i<=${end_date};i=i+86400))
    do
    ls date -d @${i} +%Y%m%d
    done

    2019-07-17 19:56:46
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Shell 脚本速查手册 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载