用於修復最短密碼期限的 Shell 腳本不起作用但沒有錯誤

用於修復最短密碼期限的 Shell 腳本不起作用但沒有錯誤

該腳本的目標是更改 /etc/login.defs 檔案中的最短密碼期限。

我的問題是,這個腳本運行時,我沒有收到任何錯誤,但是當我訪問該文件時,沒有任何變化。我不太擅長 sed 所以我認為有問題。需要協助找出問題所在。

min_pass_age=7

sed -i "s/^PASS_MIN_DAYS.*/PASS_MIN_DAYS ${min_pass_age}/" /etc/login.defs

答案1

修正了一些事情。末尾需要 /g,因為它需要選取行開頭的內容並忽略註解行。不需要使用雙引號,應該只使用單引號。

sed -i 's/^PASS_MAX_DAYS.*/PASS_MAX_DAYS 90/g' /etc/login.defs

sed -i 's/^PASS_MIN_DAYS.*/PASS_MIN_DAYS 7/g' /etc/login.defs

相關內容