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

结果:

相关推荐
wuyk5555 小时前
【Socket 进阶之路】第 3 章 TCP 三次握手 & 四次挥手深度剖析|连接建立、断开、状态机、TIME_WAIT 核心工程问题
服务器·开发语言·网络·物联网·网络协议·tcp/ip
一技安身11 小时前
【Docker】 镜像导出 & 导入,实验环境aarch64(arm64)Linux操作系统
linux·docker·容器
平头哥AI11 小时前
Day 22 _ 包装错误别丢链_%w、errors.Is 与 errors.As
android·服务器·学习·golang·go
代码村新手12 小时前
Linux调试器-gdb的使用
linux
新时代牛马12 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
两点王爷14 小时前
解决 Linux 中 version `CXXABI_1.3.8‘ not found 报错
linux·运维·服务器
xx~t14 小时前
嵌入式——51单片机1
linux·c语言·单片机·嵌入式硬件·51单片机
啦啦啦啦啦zzzz14 小时前
利用RAII机制进行日志的采集
linux·服务器·c++·网络编程·c++20
0+11114 小时前
Linux --线程概念与控制
linux·运维·服务器·jvm
nLif15 小时前
基于GTK的简易MFC对话框兼容层 -- MfcToGTK
linux·c++·mfc·gtk