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
相关推荐
Xiaomostream1 小时前
实现TCP服务器:一请求一线程 | epoll
服务器·网络协议·tcp/ip
CS_浮鱼1 小时前
【Linux】进程信号
linux·运维·服务器
wanhengidc1 小时前
云手机的出现意味着什么
运维·服务器·web安全·智能手机·云计算
TTc_1 小时前
Jenkins设置定时发布
运维·jenkins
wanhengidc1 小时前
云手机的硬件技术
运维·服务器·web安全·游戏·智能手机
骇客野人2 小时前
Spring Cloud Gateway解析和用法
运维·网络
拾忆,想起2 小时前
Dubbo超时问题排查与调优指南:从根因到解决方案
服务器·开发语言·网络·微服务·架构·php·dubbo
晨非辰3 小时前
数据结构排序系列指南:从O(n²)到O(n),计数排序如何实现线性时间复杂度
运维·数据结构·c++·人工智能·后端·深度学习·排序算法
工具人55554 小时前
复制cmd窗口所有文字快捷方式
服务器
RoboWizard4 小时前
高性能电脑热战寒冬 11月DIY配置推荐
linux·运维·服务器·电脑·金士顿