![使用脚本更改文件中的文本](https://linux22.com/image/1065357/%E4%BD%BF%E7%94%A8%E8%84%9A%E6%9C%AC%E6%9B%B4%E6%94%B9%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E6%96%87%E6%9C%AC.png)
我想使用脚本将 PASS_MIN_DAYS =(无论设置了什么值)更改为 PASS_MIN_DAYS = 15。它所在的文件是 /etc/login.defs。
答案1
我会sed
这样使用:
sed '/^PASS_MIN_DAYS/s/[0-9]\+/15/'
这会将以“PASS_MIN_DAYS”开头的行中的数字替换为15
。要编辑文件并保留.bak
扩展名的备份,请使用以下命令。默认情况下,您需要 root 访问权限才能编辑文件。
sed -i.bak '/^PASS_MIN_DAYS/s/[0-9]\+/15/' /etc/login.defs