Linux快速给用户改密码

由于巡检过程中需要修改部分用户名密码,这些强密码包含大小写、数字和特殊符号,完全没有规律,让我手动输是不可能的,于是使用以下命令来输入,但是为了不在history里面留下痕迹,所以先关闭了历史命令功能:

bash 复制代码
set +o history #关闭hittory
echo "new_password" | passwd --stdin username

注意这里有坑,如果密码里面有符号,那么会被认为是变量,我就遇到了这种情况,一直输密码不太对,所以前面要加上\进行转义。

比如:

bash 复制代码
echo "new_password\$he" | passwd --stdin username

如果批量对用户修改密码,可以用以下方式:

bash 复制代码
for i in {1..10};do
useradd username$i #用户名
  password=`cat /dev/urandom|tr -dc '[:alnum:]'|head -c12` #使用生成的随机密码,12位
  echo $password |passwd --stdin user$i &> /dev/null # 密码赋值
  echo user$i:$password >> ~/user.log # 把用户名和密码都放到文件里面
  echo "user$i is created"
done
相关推荐
lisanmengmeng13 小时前
添加ceph节点
linux·服务器·ceph
Tinyundg14 小时前
Linux系统分区
linux·运维·服务器
要做一个小太阳14 小时前
华为Atlas 900 A3 SuperPoD 超节点网络架构
运维·服务器·网络·华为·架构
江畔何人初14 小时前
service发现
linux·运维·云原生
life码农14 小时前
Linux系统清空文件内容的几种方法
linux·运维·chrome
zbguolei14 小时前
虚拟机安装Ubuntu后无法登录
linux·运维·ubuntu
UP_Continue14 小时前
Linux--基础IO
linux·运维·服务器
驱动探索者14 小时前
linux hwspinlock 学习
linux·运维·学习
FJW02081414 小时前
使用HAProxy实现动静分离
linux·服务器
头发还没掉光光14 小时前
Linux 高级 IO 深度解析:从 IO 本质到 epoll全面讲解
linux·服务器·c语言·c++