歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> SHELL編程

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

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

1:使用chpasswd

chpasswd其實是通過用戶輸入'用戶名:密碼'來更改一組用戶的密碼,還是一個可以批量修改密碼的工具,具體的用法詳見chpasswd用法,這裡只做簡單的介紹

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

實例:

添加一個doiido的帳號,密碼為123456

# echo doiido:123456 | chpasswd

2:使用passwd和--stdin組合

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

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

實例:

添加一個doiido的帳號,密碼為123456

# echo '123456'| passwd --stdin doiido

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

Shell編程淺析 http://www.linuxidc.com/Linux/2014-08/105379.htm 

Linux Shell參數替換 http://www.linuxidc.com/Linux/2013-06/85356.htm

Shell for參數 http://www.linuxidc.com/Linux/2013-07/87335.htm

Linux/Unix Shell 參數傳遞到SQL腳本 http://www.linuxidc.com/Linux/2013-03/80568.htm

Shell腳本中參數傳遞方法介紹 http://www.linuxidc.com/Linux/2012-08/69155.htm

Shell腳本傳遞命令行參數 http://www.linuxidc.com/Linux/2012-01/52192.htm

Linux Shell 通配符、轉義字符、元字符、特殊字符 http://www.linuxidc.com/Linux/2014-10/108111.htm

Copyright © Linux教程網 All Rights Reserved