当前位置: 网站首页>网站建设>小程序制作

【网站优化】专业网站建设-网站设计-网站制作与网站开发-高端品牌企业宣传策划-大理上往建站【简单基础中小型网站】

发表日期: 2022-09-01 14:53:12 浏览次数:83

上往建站提供网站建设网站推广网店设计网站建设企业网站网站制作网页设计网站建设企业网站制作网页制作   高端定制网站建设H5页面设计开发微网站微信运营移动端设计开发手机端网站小程序,致力于苏州企业网站建设与公司网站制作,全国用户超10万,10余年的网站开发和建站经验,主营:网站建设网络推广微信公众号代运营、商城小程序开发定制网店设计等业务,专业团队服务,效果好。。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)

专业网站建设-网站设计-网站制作与网站开发-高端品牌企业宣传策划-大理上往建站

网站建设.png

Shell test 命令

Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。


数值测试

参数说明
-eq等于则为真
-ne不等于则为真
-gt大于则为真
-ge大于等于则为真
-lt小于则为真
-le小于等于则为真

实例

num1=100
num2=100
if test $[num1] -eq $[num2]
then
    echo '两个数相等!'
else
    echo '两个数不相等!'
fi

输出结果:

两个数相等!

代码中的 [] 执行基本的算数运算,如:

实例

#!/bin/bash

a=5
b=6

result=$[a+b] # 注意等号两边不能有空格
echo "result 为: $result"

结果为:

result 为: 11

字符串测试

参数说明
=等于则为真
!=不相等则为真
-z 字符串字符串的长度为零则为真
-n 字符串字符串的长度不为零则为真

实例

num1="ru1noob"
num2="runoob"
if test $num1 = $num2
then
    echo '两个字符串相等!'
else
    echo '两个字符串不相等!'
fi

输出结果:

两个字符串不相等!

文件测试

参数说明
-e 文件名如果文件存在则为真
-r 文件名如果文件存在且可读则为真
-w 文件名如果文件存在且可写则为真
-x 文件名如果文件存在且可执行则为真
-s 文件名如果文件存在且至少有一个字符则为真
-d 文件名如果文件存在且为目录则为真
-f 文件名如果文件存在且为普通文件则为真
-c 文件名如果文件存在且为字符型特殊文件则为真
-b 文件名如果文件存在且为块特殊文件则为真

实例

cd /bin
if test -e ./bash
then
    echo '文件已存在!'
else
    echo '文件不存在!'
fi

输出结果:

文件已存在!

另外,Shell 还提供了与( -a )、或( -o )、非( ! )三个逻辑操作符用于将测试条件连接起来,其优先级为: ! 最高, -a 次之, -o 最低。例如:

实例

cd /bin
if test -e ./notFile -o -e ./bash
then
    echo '至少有一个文件存在!'
else
    echo '两个文件都不存在'
fi

输出结果:


号含义:


1. eq  (equal的缩写),表示等于为真


2. ne    (not equal的缩写),表示不等于为真


3. gt     (greater than的缩写),表示大于为真


4. ge  (greater&equal的缩写),表示大于等于为真


5. lt    (lower than的缩写),表示小于为真


6. le   (lower&equal的缩写),表示小于等于为真


Balcon

   Balcon


  you***err@163.com


4年前 (2018-10-28)

   开心小不点儿


  swj***1@163.com


46

result=$[a + b]

等同于:


result=`expr $a + $b `

开心小不点儿

   开心小不点儿


  swj***1@163.com


4年前 (2019-01-18)

   kaka


  471***508@qq.com


   参考地址


37

shell 判断文件夹或文件是否存在


文件夹不存在则创建


if [ ! -d "/data/" ];then

  mkdir /data

  else

  echo "文件夹已经存在"

fi

文件存在则删除


if [ ! -f "/data/filename" ];then

  echo "文件不存在"

  else

  rm -f /data/filename

fi

判断文件夹是否存在


if [ -d "/data/" ];then

  echo "文件夹存在"

  else

  echo "文件夹不存在"

fi

判断文件是否存在


if [ -f "/data/filename" ];then

  echo "文件存在"

  else

  echo "文件不存在"

fi

文件比较符


-e 判断对象是否存在

-d 判断对象是否存在,并且为目录

-f 判断对象是否存在,并且为常规文件

-L 判断对象是否存在,并且为符号链接

-h 判断对象是否存在,并且为软链接

-s 判断对象是否存在,并且长度不为0

-r 判断对象是否存在,并且可读

-w 判断对象是否存在,并且可写

-x 判断对象是否存在,并且可执行

-O 判断对象是否存在,并且属于当前用户

-G 判断对象是否存在,并且属于当前用户组

-nt 判断file1是否比file2新  [ "/data/file1" -nt "/data/file2" ]

-ot 判断file1是否比file2旧  [ "/data/file1" -ot "/data/file2" ]

kaka

   kaka


  471***508@qq.com


   参考地址


3年前 (2019-09-25)

   矿泉水瓶高高


  181***9007@qq.com


37

除非你清楚自己在干什么,否则请避免在”Shell test命令“中使用单引号——使用它可能会导致难以察觉的错误,尤其是对于Shell初学者。


让我用下列实例更进一步地解释为什么:


#! /bin/bash

# 模拟终端某一指令输出为空时用 test -z 配合单引号进行判断的效果 

wrong=``

#注意:反引号内没有任何字符

echo $wrong

if test -z '$wrong'; then

   echo "The result is empty."

else

   echo "The result is not empty."

fi

执行一下:


$ ./script-name.sh

The result is not empty.

执行后的结果与我们所期望的正好相反。这是因为单引号会将其内部的内容原样输出。


此时不论命令的输出是否非空,最终都会被判为非空。


而如果你此时没有察觉到错误的根源是单引号,相信我:你会想方设法去掉脚本输出的空格——而空格根本既无法消除又没有实际作用。


矿泉水瓶高高

   矿泉水瓶高高


  181***9007@qq.com


2年前 (2020-07-01)

   kkk


  198***2362@qq.com


20

if [ -d "/data/" ];then

  echo "文件夹存在"

  else

  echo "文件夹不存在"

fi

"/data/" 双引号可以去掉。


[] 内部两端要有空格、-d 参数和其他内容之间要有空格, 如果 then 另起一行的话 then 前不需要加 ; 否则需要在 then 前加 ;。


if test -d /data/

then

    echo '文件夹存在!'

else

    echo '文件夹不存在!'

fi

-d 参数和其他内容之间要有空格。


then 要另起一行。

专业网站建设-网站设计-网站制作与网站开发-高端品牌企业宣传策划-大理上往建站


上往建站提供微信小程序+公众号商城+企业网站建设一站式微信网站商城营销系统,微信小程序是一种依附于微信体内即点即用,无需下载安装即可使用的轻应用,它开启了移动端“触手可及”的梦想,致力于苏州企业网站建设与公司网站制作,全国用户超10万,10余年的网站开发和建站经验,主营:网站建设微信公众号代运营商城小程序开发定制网店设计等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


400-111-6878
服务热线
顶部

备案号: 苏ICP备2021016738号-6

CopyRight © 2021 上往建站 All Right Reserved 未经许可不得复制转载

24小时服务热线:400-111-6878   E-MAIL:1120768800@qq.com   QQ:1120768800

  网址: https://www.768800.club  网站建设上往建站

关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|

企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|

400电话办理| 书生商友软件|

预约专家

欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系

  

全国服务热线:400-111-6878