Shell脚本编程5个小例子

Shell 简介

Shell 是运维和系统管理员操作Linux 系统的首选,简单说,它是一个命令解释器.

命令行相关: 行首“$” 或 “#” - 命令行提示符
行中 ## - 视为注释开始
注意: 命令行是区分大小写的!

使用命令行补全(Tab) 和通配符可以提高输入效率

通配符共有3个: “*”,“?”,“[]”
** - 用于匹配文件名中任意长度的字符串;
? - 只匹配一个字符;
[] - 用于匹配所有出现在方括号内的字符。可以使用短线“-”来指定字符集范围。如:ls text[1-3] 或 ls test[a-z]

Linux 下环境下有几种不同Shell ,常用的有 BASH 、TCSH Shell和 Z-Shell 等.BASH 是默认安装和使用的Shell。

编译环境: Ubuntu14.04
vim first.sh

例子1:

#1/bin/bash

echo "Hello world"

ls -l
在这里插入图片描述
看出没有可执行
改一下权限:
chmod +x first.sh
在这里插入图片描述
在这里插入图片描述
*

例子2:

#1/bin/bash

echo "Hello world"

weifc="weifc12345"
echo $weifc

结果: Hello world
weifc12345

例子3:

#1/bin/bash

echo "Hello world"

weifc="weifc12345"
echo $weifc

for file in $(ls /home/weifc/); do
        echo "${file}"
done

运行结果:
在这里插入图片描述

例子4:

1加到100

#1bin/bash

sum=0
for i in {1..100}; do
        let sum+=i
done
echo $sum

在这里插入图片描述

例子5:

检测局域网内ip那一些是启动的, 那一些是关闭的
ifconfig
可以用ping来检测是否关闭, 这样是可用在用的
在这里插入图片描述
[ $? ] 获取上一条命令有没有成功, 如果成功了返回零

#1/bin/bash

for i in {1..254}; do
        ping -c 2 -i 0.5 192.168.255.$i
        if [ $? -eq 0 ]; then
                echo "192.168.255.$i is up"
        else
                echo "192.168.255.$i is down"
        fi
done

运行结果:
在这里插入图片描述
信息有杂, 这里修改一下.

#1/bin/bash

for i in {1..254}; do
        ping -c 2 -i 0.5 192.168.255.$i &>/dev/null
        if [ $? -eq 0 ]; then
                echo "192.168.255.$i is up"
        else
                echo "192.168.255.$i is down"
        fi
done

&>/dev/null
放到别的地方, 不在屏幕上显示

运行结果:
在这里插入图片描述
哦哦哦, 这里报错了, 是因为(少了一个空格):

 if [ $? -eq 0]; then //这是错的
 if [ $? -eq 0 ]; then //这是对的

最终结果:
在这里插入图片描述

发布了35 篇原创文章 · 获赞 33 · 访问量 293

猜你喜欢

转载自blog.csdn.net/m0_45867846/article/details/105523175