Linux---shell脚本练习

要求:

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

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

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

要求1

代码:

复制代码
if [ -f /tmp/size.log ]; then
    cat /tmp/size.log
else
    echo $(date) > /tmp/size.log
fi

结果:

要求2

代码:

复制代码
for ((i = 1; i <= 20; i++)); do
    username="user$(printf %02d $i)"
    password="user$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 5 | head -n 1)"
    useradd -m -p $(openssl passwd -1 $password) $username
    echo "User $username created with password: $password"
done

结果:

要求3

代码:

复制代码
#!/bin/bash
for file in /usr/local/*; do
    if [ -f $file ]; then
        size=$(du -m $file | awk '{print $1}')
        if [ $size -gt 10 ]; then
            mv $file /tmp
            echo "Moved $file to /tmp"
        fi
    fi
done

结果:

相关推荐
qq_2739002313 分钟前
CentOS系统防火墙服务介绍
linux·运维·centos
小余吃大鱼24 分钟前
CentOS中在线安装Docker(超详细)
linux·docker·centos
程序员JerrySUN33 分钟前
驱动开发硬核特训 · Day 19:字符设备驱动实战(控制 LED)
linux·驱动开发
小灰灰__1 小时前
Linux安装ffmpeg7.1操作说明
linux·运维·服务器
猿周LV1 小时前
网络原理 - 应用层, 传输层(UDP 和 TCP) 进阶, 网络层, 数据链路层 [Java EE]
服务器·网络·网络协议·tcp/ip·udp·java-ee
互联网搬砖老肖1 小时前
运维打铁:Centos 7 安装 redis_exporter 1.3.5
运维·redis·centos
Zz_waiting.1 小时前
网络原理 - 9
linux·服务器·网络·网络协议·tcp/ip
你又食言了哦1 小时前
linux下使用wireshark捕捉snmp报文
linux·网络·wireshark
BXCQ_xuan2 小时前
Typecho博客网站头部SEO优化完整指南
运维·服务器·数据库·php·web
fyr897572 小时前
Ubuntu 下编译goldfish内核并使用模拟器运行
android·linux