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
相关推荐
Sylvia@8881 小时前
18.SELInux安全性
linux·运维·服务器
gplitems1233 小时前
Technox – IT Solutions & Services WordPress Theme: A Practical
linux·服务器·数据库
Deamon Tree3 小时前
后端开发常用Linux命令
linux·运维·python
Super Rookie4 小时前
RabbitMQ 自动化脚本安装方案
运维·自动化·rabbitmq
key_Go4 小时前
0.基于Centos-Stream8 搭建Openstack环境
linux·运维·centos·openstack
Elastic 中国社区官方博客4 小时前
介绍 Elastic 的 Agent Builder - 9.2
大数据·运维·人工智能·elasticsearch·搜索引擎·ai·全文检索
贝锐5 小时前
把握三个要点,搭建企业远程技术支持安全体系
运维
梦昼初DawnDream5 小时前
防火墙规则设置
linux·服务器·windows
LXY_BUAA5 小时前
Linux常见命令
linux·运维·服务器
想学全栈的菜鸟阿董6 小时前
Crew连接多个 MCP 服务器
运维·服务器·github