Shell编程

2021/11/7 7:10:16

本文主要是介绍Shell编程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.变量

#!/bin/bash
#案例1:定义变量A
A=100
#输出变量需要加上$
echo A=$A
echo "A=$A"
#案例2:撤销变量A
unset A
echo "A=$A"
#案例3:声明静态的变量B=2,不能unset
readonly B=2
echo "B=$B"
#unset B
#将指令返回的结果赋给变量
:<<!
C=`date`
D=$(date)
echo "C=$C"
echo "D=$D"
!

image-20211024210310665

2.参数变量

#!/bin/bash
echo "0=$0 1=$1 2=$2"
echo "所有的参数=$*"
echo "$@"
echo "参数的个数=$#"

image-20211024210450235

3.表达式计算

#!/bin/bash
#案例1:计算(2+3)X4的值
#使用第一种方式
RES1=$(((2+3)*4))
echo "res1=$RES1"
#使用第二种方式, 推荐使用
RES2=$[(2+3)*4]
echo "res2=$RES2"
#案例2:请求出命令行的两个参数[整数]的和 20 50
SUM=$[$1+$2]
echo "sum=$SUM"

image-20211024211626378

if语句

#!/bin/bash
#"ok"是否等于"ok"
#用=
if [ "ok"="ok" ]
then
        echo "equal"
fi

#23是否大于等于22
if [ 23 -ge 22 ]
then
        echo "大于"
fi

# 判断/mnt/c/Users/丁帅帅/Desktop/test目录中是否存在aaa.txt
# 判断语句:使用 -f
if [ -f /mnt/c/Users/丁帅帅/Desktop/test/aaa.txt ]
then
        echo "存在"
fi

注意空格

image-20211024213240425

#案例:请编写一个shell程序,如果输入的参数,大于等于60,则输出 "及格了",如果小于60,则输出 "不及格"
if [ $1 -ge 60 ]
then 
	echo "及格了"
elif [ $1 -lt 60 ] 
then
	echo "不及格"
fi

image-20211024213703715

case语句

#!/bin/bash
#案例1 :当命令行参数是 1 时,输出 "周一", 是2 时,就输出"周二", 其它情况输出  "other"
case $1 in
"1")
echo "周一"
;;
"2")
echo "周二"
;;
*)
echo "other..."
;;
esac

image-20211024214250566

for语句

#!/bin/bash
#打印命令行输入的参数
for i in "$*"
do
        echo "num is $i"
done


echo "++++++++++++++++++++++++++"
for i in "$@"
do
        echo "num is $i"
done


for i in 1 3 4 6 8 9
do
        echo "$i"
done

image-20211024215243520

#!/bin/bash
#从1加到n
SUM=0;
for(( i=1; i<= $1; ++i))
do
        SUM=$[$SUM+$i]
done
echo "总和SUM=$SUM"

image-20211024215730944

while语句

#!/bin/bash
#从1加到n
SUM=0
i=0
while [ $i -le $1 ]
do
        SUM=$[$SUM+$i]
        i=$[$i+1]
done
echo "执行结果=$SUM"

image-20211024220436235

read语句

#!/bin/bash
#案例1:读取控制台输入一个NUM1值
read -p "请输入一个数NUM1=" NUM1
echo "你输入的NUM1=$NUM1"

image-20211024222323141

函数

#!/bin/bash
# 计算输入两个参数的和
#定义函数
function getSum() {

        SUM=$[$n1+$n2]
        echo "和是=$SUM"
}

#输入两个值
read -p "请输入一个数n1=" n1
read -p "请输入一个数n2=" n2

#调用自定义函数
getSum $n1 $n2

image-20211024223031157



这篇关于Shell编程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程