我有一个文件,我想在其中查找以 -rwx 或 drwx 开头并以任意数字结尾的行。
我知道了,但不太正确。有什么想法吗?
grep [^.rwx]*[0-9] usrLog.txt
最佳答案
棘手的部分是一个正则表达式,它包含一个破折号作为字符类中的有效字符之一。对于(正常)字符类,破折号必须紧跟在开始之后,对于否定字符类,必须紧跟在插入符号之后。如果您还需要一个右方括号,那么您需要右方括号后跟破折号。幸运的是,您只需要破折号,因此选择了符号。
grep '^[-d]rwx.*[0-9]$' "$@"
参见:Regular Expressions和 grep了解 POSIX 标准的详细信息。
关于Grep 用于行首和行尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58323484/