Shell变量案例

01. 使用Shell脚本打印,系统版本、内核版本平台、虚拟平台、静态主机名、eth0网卡IP地址、lo网卡IP地址、当前主机的外网IP地址curl icanhazip.com

[root@web01 /scripts]# cat var.sh

#!/bin/bash

Version=$(awk '{print $1,$4}'  /etc/redhat-release)

Vm=$(hostnamectl | awk '/Virtua/{print $2}')

Kernel=$(hostnamectl | sed -nr '/Kernel/s#.*x (.*).e.*#\1#gp')

Static_Name=$(hostnamectl  | awk '/Static/{print $3}')

Eth0=$(ifconfig  eth0 | awk 'NR==2{print $2}')

Lo=$(ifconfig  lo | awk 'NR==2{print $2}')

Wan=$(curl -s  icanhazip.com)

echo "当前系统版本为:$Version"

echo "当前系统内核版本为:$Kernel"

echo "当前系统虚拟化平台为:$Vm"

echo "当前系统静态主机名为:$Static_Name"

echo "当前系统Eth0网卡IP地址为:$Eth0"

echo "当前系统Lo网卡IP地址为:$Lo"

echo "当前系统外网IP地址为:$Wan"

[root@web01 /scripts]# sh var.sh

当前系统版本为:CentOS 7.6.1810

当前系统内核版本为:3.10.0-957

当前系统虚拟化平台为:vmware

当前系统静态主机名为:web01

当前系统Eth0网卡IP地址为:10.0.0.7

当前系统Lo网卡IP地址为:127.0.0.1

当前系统外网IP地址为:120.242.172.89

2. 需求描述:变量string="Bigdata process is Hadoop, Hadoop is open source project",执行脚本后,打印输出string变量,并给出用户以下选项:

#需求

1)打印string长度

2)删除字符串中所有的Hadoop

3)替换第一个Hadoop为Linux

4)替换全部Hadoop为Linux

用户请输入数字1|2|3|4,可以执行对应项的功能。

[root@web01 /scripts]# cat string.sh

#!/bin/bash

String="Bigdata process is Hadoop, Hadoop is open source project"

echo $String

cat <<EOF

1)打印string长度

2)删除字符串中所有的Hadoop

3)替换第一个Hadoop为Linux

4)替换全部Hadoop为Linux

EOF

read -p  "请根据上方的菜单的选项输出对应的功能,如{1|2|3|4}:" Num

if [ $Num -eq 1 ];then

    echo "当前String变量的长度为:${#String}"

fi

if [ $Num -eq 2 ];then

    echo "删除变量中的所有Hadoop字符串。"

    echo ${String//Hadoop/}

fi

if [ $Num -eq 3 ];then

    echo "替换变量中的第一个Hadoop为Linux。"

    echo ${String/Hadoop/Linux}

fi

if [ $Num -eq 4 ];then

    echo "替换变量中的所有的Hadoop为Linux。"

    echo ${String//Hadoop/Linux}

fi

"

echo "当前系统内核版本为:$Kernel"

echo "当前系统虚拟化平台为:$Vm"

echo "当前系统静态主机名为:$Static_Name"

echo "当前系统Eth0网卡IP地址为:$Eth0"

echo "当前系统Lo网卡IP地址为:$Lo"

echo "当前系统外网IP地址为:$Wan"

[root@web01 /scripts]# sh var.sh

当前系统版本为:CentOS 7.6.1810

当前系统内核版本为:3.10.0-957

当前系统虚拟化平台为:vmware

当前系统静态主机名为:web01

当前系统Eth0网卡IP地址为:10.0.0.7

当前系统Lo网卡IP地址为:127.0.0.1

当前系统外网IP地址为:120.242.172.89

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容