shell参数判断

Shell命令
2437
linux
linux 举报
2022-07-11

对于只判断一个参数的

#!/bin/bash

if [ ! -n "$1" ] ;then

    echo "you have not input a agrs!"

else

    echo "the args you input is $1"

fi

或者

在shell中$1变量表示脚本的第一个参数。所以如果判断$1参数是空值,即可表示脚本没有参数。示例代码如下:

if [ "$1" ];then

    echo "带参数";

else

    echo "没有带参数 "

fi

上面的代码其实和使用if结构的-z参数是一样的,都是用于检测字符串是符不空值。因此也可以换成使用-z参数来判断。示例代码如下 :

if [ -z "$1" ];then

    echo "没有带参数";

else

    echo "带参数"

fi

多个参数的:

shell中默认$#变量说明脚本参数的个数,如果这个值是0表示脚本没有带参数,如果大于0,则表示带有参数。

if [ $# == 0 ];then

    echo "没有带参数";

else

    echo "带了$#个参数"

fi

————————————————



倒序看帖 只看楼主
热点关注
/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
服务停止、启动、重启一体化脚本,万能语言启动脚本
shell参数判断
在后台用进程名运行bash脚本
shell脚本每行后面多了一个^M的原因和解决办法
定时检测服务,检测down掉后重启。系统检测到DMSERVER运行正常
挂载磁盘的时候遇到一个问题,挂载完磁盘之后重启服务器挂载的盘丢失了.
中标麒麟系统Your trial is EXPIRED and no VALID licens
termux 开启ssh并用用户名和密码登陆
组成共享库的目标文件和一般的目标文件有所不同,在编译时要加-fPIC和-share选项,例如:
gcc指定链接库路径后还是找不到库文件
./configure -build,-host,-target设置
shell脚本每行后面多了一个^M的原因和解决办法
shell 中 if [ “x${var}“ == “x“ ] 中 x的作用
查看linux机器是32位还是64位的方法