如何解决使用Grep + Regex Linux
我试图在/etc/login.defs文件中找到等于或小于90的值“ PASS_MAX_DAYS”,但是它不起作用,我正在suse 12服务器上进行测试,但是该命令不起作用。 >
grep "^PASS_MAX_DAYS\s*([0-9]|[1-8][0-9]|90)" /etc/login.defs
感谢您的支持和时间
解决方法
最好根据您的值测试数字,而不是针对任何模式测试字符串(如注释中所建议)。例如这样的
awk '/^PASS_MAX_DAYS/ && $2<=90' /etc/login.defs
这样,如果您的限制更改为30
天或365
天,则可以轻松地修改命令。另外,我猜像090
这样的值对于该配置仍然有效。
grep
默认情况下不理解扩展的正则表达式..
grep -E "^PASS_MAX_DAYS\s*([0-9]|[1-8][0-9]|90)\s*$" /etc/login.defs
会给您一些结果。
也就是说,您希望在该文件中有PASS_MAX_DAYS
个不同的条目?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。