V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
reticentfat
V2EX  ›  问与答

在 linux 环境下如何简便写出语句来 cat 所需文件

  •  
  •   reticentfat · 2015-01-06 12:26:12 +08:00 · 2514 次点击
    这是一个创建于 3608 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在服务器上边每天生成一个文件夹,比如20140901这样的格式,
    我想提取每月最后一天文件夹里边的a.txt怎么写啊?
    开始我写的是
    cat /data0/2014/2014(0131|0228|0331|0430|0531|0630|0731|0831|0930|1031|1130|1231)/a.txt
    提示syntax error near unexpected token `
    后来改写成
    cat /data0/2014/20140131/a.txt /data0/2014/20140228/a.txt /data0/2014/20140331/a.txt /data0/2014/20140430/a.txt /data0/2014/20140531/a.txt /data0/2014/20140630/a.txt /data0/2014/20140731/a.txt /data0/2014/20140831/a.txt /data0/2014/20140930/a.txt /data0/2014/20141031/a.txt /data0/2014/20141130/a.txt /data0/2014/20141231/ a.txt
    可以实现,不过觉得太繁琐。
    请问大家有何其他方法吗?
    谢谢大家
    5 条回复    2015-01-06 12:58:24 +08:00
    Mutoo
        1
    Mutoo  
       2015-01-06 12:39:16 +08:00   ❤️ 1
    用花括号扩展 {a,b,c} 而不是 (a|b|c)

    http://blog.csdn.net/tttyd/article/details/11742241
    RemRain
        2
    RemRain  
       2015-01-06 12:40:05 +08:00
    通配符 cat /data0/2014/2014??31/a.txt
    chunyang
        3
    chunyang  
       2015-01-06 12:42:25 +08:00
    > 提示syntax error near unexpected token `

    圆括号"()" 中的内容应该是指令,而不是参数。这里应该用大括号"{}"
    reticentfat
        4
    reticentfat  
    OP
       2015-01-06 12:57:42 +08:00
    @RemRain 每月最后一天不全是31号阿
    reticentfat
        5
    reticentfat  
    OP
       2015-01-06 12:58:24 +08:00
    @Mutoo 谢谢,已经实现
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5306 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 09:00 · PVG 17:00 · LAX 01:00 · JFK 04:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.