Shell脚本中编程和变量的示例分析-创新互联
这篇文章将为大家详细讲解有关Shell脚本中编程和变量的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
超过十多年行业经验,技术领先,服务至上的经营模式,全靠网络和口碑获得客户,为自己降低成本,也就是为客户降低成本。到目前业务范围包括了:成都网站设计、成都网站制作,成都网站推广,成都网站优化,整体网络托管,小程序设计,微信开发,APP应用开发,同时也可以让客户的网站和网络营销和我们一样获得订单和生意!一.Shell 脚本的概述
二.Shell的作用
三.写第一个Shell脚本
1.写一个脚本(到BOOT目录,查看当前位置,以长格式友好显示VML开头的所有文件)
[root@localhost ~]# vim aaa.sh "随意编一个空文件以.sh为结尾" /bin/bash "开头声明,固定格式” 一个脚本 "描述性信息可加可不加" cd /boot/ pwd ls -lh vml* ~ ~
2.给我们的脚本加上执行权限,看一下结果
[root@localhost ~]# chmod +x aaa.sh [root@localhost ~]# ./aaa.sh //执行脚本,这是我们最常用的方式
/boot -rwxr-xr-x. 1 root root 5.7M 8月 10 00:26 vmlinuz-0-rescue-cc65aecf945d4dde800fe3e29ee6edbc -rwxr-xr-x. 1 root root 5.7M 8月 23 2017 vmlinuz-3.10.0-693.el7.x86_64
3.重定向符号" > " 管道符号" | "
" > " :把左侧的命令结果重定向另一个文件或目录 [root@localhost opt]# touch abc.tt abd.txt [root@localhost opt]# ls abc.tt abd.txt rh [root@localhost opt]# tar czvf test.tar.gz *.txt > test2.txt [root@localhost opt]# ls abc.tt abd.txt rh test2.txt test.tar.gz [root@localhost opt]# cat test2.txt abd.txt [root@localhost opt]#
" | " :把左侧的命令结果,作为右侧命令的处理对象
统计所有磁盘分区的占用率 [root@localhost opt]# df -hT 文件系统 类型 容量 已用 可用 已用% 挂载点 /dev/sda2 xfs 10G 3.8G 6.3G 38% / devtmpfs devtmpfs 898M 0 898M 0% /dev tmpfs tmpfs 912M 0 912M 0% /dev/shm tmpfs tmpfs 912M 9.1M 903M 1% /run tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup /dev/sdb1 xfs 20G 33M 20G 1% /mnt/sdb /dev/sda5 xfs 10G 37M 10G 1% /home /dev/sda1 xfs 6.0G 174M 5.9G 3% /boot tmpfs tmpfs 183M 12K 183M 1% /run/user/42 tmpfs tmpfs 183M 0 183M 0% /run/user/0 磁盘在第一列 占用率在第5列 [root@localhost opt]# df -h | grep "dev/sd*" | awk '{print $1,$5 }' /dev/sda2 38% tmpfs 0% /dev/sdb1 1% /dev/sda5 1% /dev/sda1 3% [root@localhost opt]#
4.变量的作用和类型
预定义变量: 变量名 作用 $0 当前脚本的名字 $n 传递给脚本或者函数的参数,n表示第几个参数 $# 传递给脚本或函数的参数个数 $* 传递给脚本或函数的所有参数 $@ 传递给脚本或者函数的所有参数 $$ 当前shell脚本进程的PID $? 函数返回值,或者上个命令的退出状态
5.定义一个新的变量,查看变量的值
变量名=变量值
变量名以字母或下划线开头,区分大小写
[root@localhost opt]# Producht=Python [root@localhost opt]# Version=2.7.13 [root@localhost opt]# echo $Producht Python [root@localhost opt]# echo $Producht $Version Python 2.7.13 [root@localhost opt]#
6.赋值使用各种引号,键盘输入内容为变量赋值
[root@localhost ~]# vim c.sh #!/bin/bash read -p "请输入一个整数" num1 read -p "请输入第二个整数" num2 ~ [root@localhost ~]# chmod +x c.sh [root@localhost ~]# ./c.sh 请输入第一个整数21 请输入的二个整数232
7.整数变量的运算
8.位置变量
[root@localhost ~]# vim .sss.sh
#!/bin/bash read -p "第一个位置变量$1" read -p "第二个位置变量$2" sum=`expr $1 + $2` echo "整数之和为$sum" ~ [root@localhost ~]# ./.sss.sh 23 45 第一个位置变量23 第二个位置变量45 整数之和为68 [root@localhost ~]# ./.sss.sh 64 120 第一个位置变量64 第二个位置变量120 整数之和为18
9.环境变量
[root@localhost ~]# echo $PWD /root [root@localhost ~]# echo $HOME /root [root@localhost ~]# echo $USER root [root@localhost ~]# echo $SHELL /bin/bash
10.预定义变量
#!/bin/bash read -p "第一个位置变量$1" read -p "第二个位置变量$2" sum=`expr $1 + $2` echo "整数之和为$sum" echo "脚本名称$0" echo "详细数字$*" echo "参数的个数$#" ~ ~
[root@localhost ~]# ./.sss.sh 64 120 第一个位置变量64 第二个位置变量120 整数之和为184 脚本名称./.sss.sh 详细数字64 120 参数的个数2
关于“Shell脚本中编程和变量的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章标题:Shell脚本中编程和变量的示例分析-创新互联
文章源于:http://scjbc.cn/article/ijchp.html