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

结果:

相关推荐
蜡笔小炘6 分钟前
LVS -- 持久链接(Persistent Connection)实现会话粘滞
运维·服务器
蜡笔小炘16 分钟前
LVS -- 利用防火墙标签(FireWall Mark)解决轮询错误
服务器·数据库·lvs
生活很暖很治愈26 分钟前
Linux——孤儿进程&进程调度&大O(1)调度
linux·服务器·ubuntu
HalvmånEver42 分钟前
Linux:线程同步
linux·运维·服务器·线程·同步
喵叔哟43 分钟前
06-ASPNETCore-WebAPI开发
服务器·后端·c#
Zach_yuan44 分钟前
自定义协议:实现网络计算器
linux·服务器·开发语言·网络
岁杪杪1 小时前
关于运维:LINUX 零基础
运维·服务器·php
wdfk_prog1 小时前
[Linux]学习笔记系列 -- [drivers][I2C]I2C
linux·笔记·学习
VekiSon1 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
tianyuanwo1 小时前
企业级NTP客户端配置指南:基于内部NTP服务器的实践
运维·服务器·ntp客户端