linux shell数组参数传递参数,Shell学习【参数传递】

参数传递

shell脚本运行可以通过参数传递到脚本 来作为自动输入参数

#!/bin/bash

#定义数组

echo "Shell 传递测试";

echo "这是水果:$0";

echo "这是水果:$1";

echo "这是水果:$2";

运行脚本时需要导入传递的值

chmod +x test.sh

./test.sh Banana apple orange

#显示结果

这是水果:Banana;

这是水果:apple;

这是水果:orange;

特殊字符:

$#

传递到脚本的参数个数

$*

显示所有向脚本传递的参数。

$$

脚本运行的当前进程ID号

$!

后台运行的最后一个进程的ID号

$@

与$*相同,但是使用时加引号,并在引号中返回每个参数。

如"$@"只有在双引号中体现出来、以"$1" "$2" … "$n" 的形式输出所有参数。

$-

显示Shell使用的当前选项,与

功能相同。

$?

显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。

#判断上一步操作是否成功 即是否 $?=0

#!/bin/bash

if [ $? -eq 0 ];then

echo  -e "\033[36mThis **** successful!!\033[0m"

else

echo  -e "\033[32mthis **** failed !!!\033[0m"

fi

#判断是否有参数输入

if [ -n "$1" ]; then

echo "包含第一个参数"

else

echo "没有包含第一参数"fi

#判断目录是否存在

#!/bin/bash

BAK_DIR=/usr/local/tomcat/webapps_bak/`date +%Y%m%d`

if [ ! -d $BAK_DIR ];then

mkdir -p $BAK_DIR

fi

#判断文件是否存在

#!/bin/bash

BAK_DIR=/usr/local/tomcat/webapps_bak/`date +%Y%m%d`

if [ ! -e $BAK_DIR ];then

touch $BAK_DIR

fi

#判断字符串是否相同,注意空格使用

#!/bin/bash

BAK_DIR="str"

if [[ ${BAK_DIR} = ${BAK_DIR} ]];then

echo "${BAK_DIR} 相同"

else

echo "${BAK_DIR} 不相同"

fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值