【问题标题】:Selecting a string of a specific length in one-line bash regex在单行 bash 正则表达式中选择特定长度的字符串
【发布时间】:2018-02-23 19:57:10
【问题描述】:

很抱歉这个简单的问题,但我是编写 bash 程序的新手。

我正在尝试写下这一行:

for i in /etc/file*; do SOME-COMMAND $i; done

但是,我需要确保 file* 在 file.. 之后只能有 2 个字符。即“fileaa”可以,但“fileabc”不行。我需要对我的命令进行哪些更改?

谢谢!

【问题讨论】:

标签: bash glob


【解决方案1】:

尝试将* 更改为??,如下所示。

for i in /etc/file??; do SOME-COMMAND $i; done

* 是一个贪婪的百搭字符,这意味着它将匹配所有内容,另一方面,百搭字符 ? 表示任何单个字符,所以你想要 2 中的任何一个,所以 ?? 应该在这里有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-04
    • 1970-01-01
    • 1970-01-01
    • 2018-07-07
    • 1970-01-01
    • 2021-05-16
    • 1970-01-01
    相关资源
    最近更新 更多