gpt4 book ai didi

regex - find -regex 不适用于 {} 说明符

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:42:21 25 4
gpt4 key购买 nike

我正在尝试运行以下命令:

find /var/log/sa/ -regex ".*/sa[0\-3]\{2\}"

但是,这不会返回任何结果。我可以在 /var/log/sa/ 中看到文件存在,sa##sar## 两种格式——我只想匹配前者。

ll /var/log/sa/
total 40992
-rw-r--r-- 1 root root 719892 Dec 1 23:50 sa01
-rw-r--r-- 1 root root 719892 Dec 2 23:50 sa02
-rw-r--r-- 1 root root 719892 Dec 3 23:50 sa03
-rw-r--r-- 1 root root 719892 Dec 4 23:50 sa04
-rw-r--r-- 1 root root 719892 Dec 5 23:50 sa05
-rw-r--r-- 1 root root 719892 Dec 6 23:50 sa06
-rw-r--r-- 1 root root 719892 Dec 7 23:50 sa07
-rw-r--r-- 1 root root 719892 Dec 8 23:50 sa08
-rw-r--r-- 1 root root 719892 Dec 9 23:50 sa09
-rw-r--r-- 1 root root 719892 Dec 10 23:50 sa10
-rw-r--r-- 1 root root 719892 Dec 11 23:50 sa11
-rw-r--r-- 1 root root 719892 Dec 12 23:50 sa12
-rw-r--r-- 1 root root 719892 Dec 13 23:50 sa13
-rw-r--r-- 1 root root 719940 Dec 14 23:50 sa14
-rw-r--r-- 1 root root 719892 Dec 15 23:50 sa15
-rw-r--r-- 1 root root 719892 Dec 16 23:50 sa16
-rw-r--r-- 1 root root 719892 Dec 17 23:50 sa17
-rw-r--r-- 1 root root 719892 Dec 18 23:50 sa18
-rw-r--r-- 1 root root 719892 Dec 19 23:50 sa19
-rw-r--r-- 1 root root 719892 Dec 20 23:50 sa20
-rw-r--r-- 1 root root 719892 Dec 21 23:50 sa21
-rw-r--r-- 1 root root 719892 Dec 22 23:50 sa22
-rw-r--r-- 1 root root 669932 Dec 23 22:10 sa23
-rw-r--r-- 1 root root 719892 Nov 24 23:50 sa24
-rw-r--r-- 1 root root 719892 Nov 25 23:50 sa25
-rw-r--r-- 1 root root 719892 Nov 26 23:50 sa26
-rw-r--r-- 1 root root 719892 Nov 27 23:50 sa27
-rw-r--r-- 1 root root 719892 Nov 28 23:50 sa28
-rw-r--r-- 1 root root 719892 Nov 29 23:50 sa29
-rw-r--r-- 1 root root 719892 Nov 30 23:50 sa30
-rw-r--r-- 1 root root 673355 Dec 1 23:53 sar01
-rw-r--r-- 1 root root 673355 Dec 2 23:53 sar02
-rw-r--r-- 1 root root 673355 Dec 3 23:53 sar03
-rw-r--r-- 1 root root 673355 Dec 4 23:53 sar04
-rw-r--r-- 1 root root 673355 Dec 5 23:53 sar05
-rw-r--r-- 1 root root 673355 Dec 6 23:53 sar06
-rw-r--r-- 1 root root 673355 Dec 7 23:53 sar07
-rw-r--r-- 1 root root 673355 Dec 8 23:53 sar08
-rw-r--r-- 1 root root 673355 Dec 9 23:53 sar09
-rw-r--r-- 1 root root 673355 Dec 10 23:53 sar10
-rw-r--r-- 1 root root 673355 Dec 11 23:53 sar11
-rw-r--r-- 1 root root 673355 Dec 12 23:53 sar12
-rw-r--r-- 1 root root 673355 Dec 13 23:53 sar13
-rw-r--r-- 1 root root 674697 Dec 14 23:53 sar14
-rw-r--r-- 1 root root 673355 Dec 15 23:53 sar15
-rw-r--r-- 1 root root 673355 Dec 16 23:53 sar16
-rw-r--r-- 1 root root 673355 Dec 17 23:53 sar17
-rw-r--r-- 1 root root 673355 Dec 18 23:53 sar18
-rw-r--r-- 1 root root 673355 Dec 19 23:53 sar19
-rw-r--r-- 1 root root 673355 Dec 20 23:53 sar20
-rw-r--r-- 1 root root 673355 Dec 21 23:53 sar21
-rw-r--r-- 1 root root 673355 Dec 22 23:53 sar22
-rw-r--r-- 1 root root 673355 Nov 23 23:53 sar23
-rw-r--r-- 1 root root 673355 Nov 24 23:53 sar24
-rw-r--r-- 1 root root 673355 Nov 25 23:53 sar25
-rw-r--r-- 1 root root 673355 Nov 26 23:53 sar26
-rw-r--r-- 1 root root 673355 Nov 27 23:53 sar27
-rw-r--r-- 1 root root 673355 Nov 28 23:53 sar28
-rw-r--r-- 1 root root 673355 Nov 29 23:53 sar29
-rw-r--r-- 1 root root 673355 Nov 30 23:53 sar30

最佳答案

你应该使用:

 find /var/log/sa/ -regex ".*/sa[0-3][0-9]"

因为 sa 之后的第一个字符应该是 0/1/2/3 而第二个字符应该是任何数字。

{..} 不起作用的原因是 GNU 的查找不支持 {from,to} 语法。 The default regex in find is emacs , 但 GNU 使用的版本不支持 {..} 语法。

关于regex - find -regex 不适用于 {} 说明符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41308348/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com