Linux/CentOS Shell腳本中非交互式修改密碼

今天在寫一個shell腳本的時候發現須要設置用戶的密碼,而設置密碼是交互式的,這樣在腳本中顯然是不太好的,所以上網查找資料,發現瞭如下兩種非交互式設置密碼的方式:linux


一、使用chpasswdshell


chpasswd實際上是經過用戶輸入'用戶名:密碼'來更改一組用戶的密碼,仍是一個能夠批量修改密碼的工具,具體的用法詳見chpasswd用法,這裏只作簡單的介紹ide


格式:# echo 用戶名:密碼 | chpasswd工具


好比想要添加一個linuxidc的賬號,密碼爲123456,指令以下it


# echo linuxidc:123456 | chpasswdclass


二、使用passwd和--stdin組合終端


passwd默認是要用終端做爲標準輸入,而--stdin表示能夠用任意文件作標準輸入,這兩個配合能夠直接修改密碼密碼


格式:# echo '密碼'| passwd --stdin 用戶名腳本


仍是添加一個linuxidc的賬號,密碼爲123456,指令以下di


# echo '123456'| passwd --stdin linuxidc


這樣就能夠實如今非交互模式下修改密碼,可是對於某些嵌入式linux這兩種方式都不支持,則能夠使用export來實現。

相關文章
相關標籤/搜索