国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > Linux Shell > 正文

Linux下交互式與非交互式修改用戶密碼的例子

2020-07-27 19:12:29
字體:
來源:轉載
供稿:網(wǎng)友

最近管理的一批機器,有個需求是要統(tǒng)一修改一個帳號的用戶名密碼,比如將qa帳號的密碼改為1234,后來還為了腳本化,很方便的執(zhí)行,還使用了非交互式地修改用戶的密碼。簡單記錄一下吧。

1. 交互式配置本地用戶的密碼:passwd 命令

復制代碼 代碼如下:

[root@host_221-81 ~]# passwd qa
Changing password for user qa.
New password:
BAD PASSWORD: it is too short
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.

2. 非交互式修改本地用戶的密碼:chpasswd

復制代碼 代碼如下:

# chpasswd命令使用起來很簡潔
[root@host_221-81 ~]# echo "qa:1234" | chpasswd
 
# 使用passwd命令,也可以實現(xiàn)非交互式修改密碼
[root@host_221-81 ~]# echo "1234" | passwd --stdin "qa"
Changing password for user qa.
passwd: all authentication tokens updated successfully.

3. 使用expect來處理交互式輸入,從而實現(xiàn)非交互式的密碼修改。

復制代碼 代碼如下:

#!/bin/sh
# /
exec expect -f "$0" "$@"
if { $argc != 2 } {
    puts "Usage: $argv0 <username> <passwd>"
    exit 1
}
set password [lindex $argv 1]
spawn passwd [lindex $argv 0]
sleep 1
expect "assword:"
send "$password/r"
expect "assword:"
send "$password/r"
expect eof

注意:腳本的第二行,這種寫法可能比較陌生,這是在TCL語言中的語法,The backslash is recognized as part of a comment to sh, but in Tcl the backslash continues the comment into the next line which keeps the exec command from executing again.

該腳本的執(zhí)行結果為:

復制代碼 代碼如下:

[root@smilejay ~]# ./change-pwd-expect.sh qa 1234
spawn passwd qa
Changing password for user qa.
New password:
BAD PASSWORD: it is too short
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 石渠县| 博乐市| 丹棱县| 临城县| 布尔津县| 麻江县| 南川市| 陇西县| 汪清县| 凤城市| 嘉峪关市| 新宁县| 泰州市| 天水市| 京山县| 新和县| 信阳市| 湄潭县| 股票| 新源县| 汽车| 木里| 阳原县| 二手房| 轮台县| 罗甸县| 井研县| 南雄市| 安达市| 景泰县| 通山县| 南康市| 木里| 绥滨县| 丹棱县| 宜君县| 历史| 镇巴县| 宁陵县| 乌海市| 大埔区|