gpt4 book ai didi

Linux 文件权限的正则表达式(数字符号)

转载 作者:IT王子 更新时间:2023-10-29 00:23:58 25 4
gpt4 key购买 nike

我这辈子都想不出合适的正则表达式。

我正在寻找的是一个正则表达式,用于匹配 Linux 文件权限的有效数字表示(例如,740 表示全部不读,777 表示全部全部)。到目前为止,我已经尝试了以下方法:

strtotest=740
echo "$strtotest" | grep -q "[(0|1|2|3|4|5|7){3}]"
if [ $? -eq 0 ]; then
echo "found it"
fi

上面的问题是正则表达式匹配其中包含 1-57 的任何内容,而不管任何其他字符。例如,如果将 strtotest 更改为 709,则条件将为真。我也试过 [0|1|2|3|4|5|7{3}][(0|1|2|3|4|5|7{ 3})] 但那些效果不佳。

是我使用的正则表达式有误,还是我遗漏了必须处理 grep 的内容?

最佳答案

你想要的大概是

grep -Eq "[0-7]{3}"

编辑:如果你用它来查找具有特定权限的文件,你应该看看 find (-perm) 或 stat

关于Linux 文件权限的正则表达式(数字符号),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13419023/

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