shell脚本练习

1、shell 脚本写出检测 /tmp/size.log 文件如果存在显示它的内容,不存在则创建一个文件将创建时间写入。

2、写一个 shell 脚本,实现批量添加 20个用户,用户名为user01-20,密码为user 后面跟5个随机字符。

  • seq -w 01 20seq 命令用于生成数字序列,-w 选项是让生成的数字等宽输出,例如 01、02、03 等,这里它会生成从 01 到 20 的数字序列。$(...) 是命令替换语法,会先执行括号内的命令,并用其输出结果替换整个$(...)部分,所以for循环会依次迭代这些数字。do开始循环体,后续的代码块会针对每次迭代执行一次。
  • cat /dev/urandom/dev/urandom是 Linux 系统中的一个伪随机数生成设备文件,cat读取它能获取大量随机数据。
  • tr -dc 'a-zA-Z0-9'tr命令用于字符转换和删除,-d 表示删除指定字符集以外的字符,-c 取反,这里就是保留字母(大小写)和数字,删除其他字符。
  • fold -w 5fold 命令用于将文本按指定宽度折叠,这里设置宽度为 5,即把前面处理得到的随机字符序列截取出 5 个字符。
  • head -n 1head 命令用于输出文件或输入流的前n行,这里取第一行,所以最终得到 5 个随机的字母数字组合,再拼接到user后面,赋值给password变量。
  • chpasswd命令可以批量从标准输入读取用户名和密码的对应关系,为对应的用户更新密码。

3、编写个shel 脚本将/usr/local 日录下大于10M的文件转移到/tmp目录下

相关推荐
晚晶几秒前
【Linux】opencv4.9.0静态库编译,开启opencl和EIGEN矩阵运算
linux·c++·opencv·矩阵·opencl
没有名字的鬼2 分钟前
Linux 下的静态库和动态库(C语言)
linux·c语言
ayaya_mana4 分钟前
从零开始部署求生之路2 (L4D2) 专属服务器,Linux端SteamCMD详细部署过程
linux·服务器·l4d2·求生之路2
她说彩礼65万5 分钟前
C# Activator详解
java·服务器·c#
九河云5 分钟前
华为云 IoT 边缘 IoTEdge 实战:工业设备数采与云边协同部署全指南
服务器·物联网·华为云·智能家居
wusam7 分钟前
计算机网络传输层应用层综合实验5:DHCP服务
linux·服务器·计算机网络·应用层服务
hnlq8 分钟前
高性能异步io机制io_uring(二) ——io_uring的简单实现
linux·服务器·网络
wusam8 分钟前
计算机网络传输层应用层综合实验7:Web网站架设
运维·服务器·计算机网络·应用层服务
tianyuanwo8 分钟前
服务器操作系统SBOM实践:基于RPM生态的大规模组件透明化管理
运维·服务器·rpm·sbom
wusam12 分钟前
计算机网络传输层应用层综合实验6:DNS服务部署
服务器·网络·计算机网络·应用层服务