高级运维:shell练习2

1、需求:判断192.168.1.0/24网络中,当前在线的ip有哪些,并编写脚本打印出来。

vim check.sh

bash 复制代码
#!/bin/bash

# 定义网络前缀
network_prefix="192.168.1"

# 循环遍历1-254的IP
for i in {1..254}; do
    # 构造完整的IP地址
    ip="$network_prefix.$i"
    
    # 使用ping命令进行检测,-c 1表示发送1个ECHO_REQUEST,-W 1表示超时时间为1秒
    # 如果ping通,$?的值为0
    ping -c 1 -W 1 $ip > /dev/null 2>&1
    
    # 判断ping的结果
    if [ $? -eq 0 ]; then
        echo "IP $ip is online"
    fi
done

//给check.sh赋予权限

chmod check.shod +x

运行:

2、设计一个 Shell 程序,在/userdata 目录下建立50个目录,即 userl~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。

vim name.sh

bash 复制代码
#!/bin/bash
dir_path="/userdata"
for i in {1..50}; do
    dir_name="user$i"
    mkdir -p "$dir_path/$dir_name"
    chmod 750 "$dir_path/$dir_name"
done
~            

给name.sh赋予权限

chmod +x name.sh

运行:

相关推荐
HiTomcat3 分钟前
一键自动化部署 macOS 开发环境
运维·macos·自动化
Bdygsl12 分钟前
Linux(10)—— 进程控制(等待)
linux·运维·服务器
c++逐梦人13 分钟前
进程的优先级与切换
linux·服务器·操作系统
重生之绝世牛码14 分钟前
Linux软件安装 —— Redis集群安装(三主三从)
大数据·linux·运维·数据库·redis·数据库开发·软件安装
网安CILLE17 分钟前
Wireshark 抓包实战演示
linux·网络·python·测试工具·web安全·网络安全·wireshark
是jin奥19 分钟前
Ubuntu 18 安装 nodejs 合适版本
linux·ubuntu·vim
网硕互联的小客服23 分钟前
如何彻底删除CentOS自带的postfix服务释放25端口?
linux·运维·centos
七七powerful28 分钟前
docker 部署dirsearch并进行目录遍历扫描
运维·docker·容器
天码-行空28 分钟前
CentOS 误删 /dev 目录救援方案
linux·运维·centos
小码吃趴菜28 分钟前
mysql
linux·运维·服务器