V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
reticentfat
V2EX  ›  问与答

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

  •  
  •   reticentfat · Jan 6, 2015 · 3112 views
    This topic created in 4142 days ago, the information mentioned may be changed or developed.
    在服务器上边每天生成一个文件夹,比如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 replies    2015-01-06 12:58:24 +08:00
    Mutoo
        1
    Mutoo  
       Jan 6, 2015   ❤️ 1
    用花括号扩展 {a,b,c} 而不是 (a|b|c)

    http://blog.csdn.net/tttyd/article/details/11742241
    RemRain
        2
    RemRain  
       Jan 6, 2015
    通配符 cat /data0/2014/2014??31/a.txt
    chunyang
        3
    chunyang  
       Jan 6, 2015
    > 提示syntax error near unexpected token `

    圆括号"()" 中的内容应该是指令,而不是参数。这里应该用大括号"{}"
    reticentfat
        4
    reticentfat  
    OP
       Jan 6, 2015
    @RemRain 每月最后一天不全是31号阿
    reticentfat
        5
    reticentfat  
    OP
       Jan 6, 2015
    @Mutoo 谢谢,已经实现
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   6183 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 96ms · UTC 02:56 · PVG 10:56 · LAX 19:56 · JFK 22:56
    ♥ Do have faith in what you're doing.