0


shell变量的定义

1、变量定义示例:变量名=变量值

#!/bin/bash
#########################
#File name:variable.sh
#Version:v1.0
#Email:[email protected]
#Created time:2022-08-26 19:57:02
#Description:
#########################
#定义变量
a=1

b="shell"

c="hello shelli"

#定义备份路径
bak_dir=/data/backup

#把一个命令的结果赋值给变量

变量名=`ls`
变量名=$(ls)

注意:

(1) “=”前后不能有空格

(2) 字符串类型建议用引号括起来,尤其是特殊字符或有空格

引用变量:$变量名或者${变量名}

查看变量:echo $变量名,set(可查看所有变量:包括自定义变量和环境变量),env显示全局变量,

declare输出所有的变量、函数、整数和已经导出的变量。

取消变量:unset 变量名

作用范围:仅在当前shell中有效

2、位置参数和预定义变量

$#

命令行参数的个数

$n

表示传递给脚本的第n个参数,例如$1表示第一个参数,$2表示第二个参数,$3表示第三

个参数

$0

当前脚本的名称

$*

以"参数1 参数2 参数3…"的形式返回所有参数的值

$@

以“参数1”“参数2”“参数3”…的形式返回所有的值

$?

前一个命令或者函数的返回状态码。$?的返回值用法:

1)判断命令、脚本或函数等程序

是否执行成功

2)若在脚本中调用执行“exit 数字”,则会返回这个数字给“$?”变量

3)如 果是在函数里,则通过“return 数字”把这个数字以函数值的形式传给“$?”

$$

返回本程序的进程ID(PID),不常用

$!

获取上一个在后台工作的进程的进程号,不常用

$_

保存之前执行的命令的最后一个参数,不常用

#!/bin/bash
#########################
#File name:param.sh
#Version:v1.0
#Email:[email protected]
#Created time:2022-08-26 17:18:19
#Description:
#########################
echo "第一个位置参数是$1"
echo "第2个位置参数是$2"
echo "所有参数是$*"
echo "所有参数是$@"
echo "参数的个数是$#"
echo "当前进程的PID是$$"

执行结果:

编写脚本使用判断IP地址是否ping通

#!/bin/bash
#########################
#File name:ping.sh
#Version:v1.0
#Email:[email protected]
#Created time:2022-08-26 17:24:58
#Description:
#########################
ping -c2 $1  &> /dev/null
if [ $? = 0 ];then
  echo "host $1 is ok"
else
  echo "host $1 is fail"
fi

执行结果:

标签: linux 运维 服务器

本文转载自: https://blog.csdn.net/qq_59323864/article/details/126531541
版权归原作者 司夜寒的夏天 所有, 如有侵权,请联系我们删除。

“shell变量的定义”的评论:

还没有评论