shell编程中功能语句

文章介绍了Shell编程中结果的真假表示,不同于C语言,真为0,假为非0。`read`命令用于接收用户输入,并展示了如何使用算数运算符`expr`进行计算。此外,还详细解释了测试命令,包括字符串、整数和文件的相关比较操作。
摘要由CSDN通过智能技术生成

一.   shell语言中的真假结果

shell语言中结果的真假与 C 语言中不同。在C语言中,如果结果为真则为 1,如果结果为假则结果为0。

在shell 编程中,如果结果为真:0。   如果结果为假:非0

注意:判断真或假的结果的值存放在符号 ? 中。可以通过打印符号 ? 获取结果

举例如下:

#! /bin/bash

[ "hello" = "world" ]
echo $?    #真或假结果保存在符号?中

以上代码执行结果为 1,即非0。

1.   read 接收用户输入

shell 脚本编程中,read 为接收用户输入,并且,把输入的内容赋值给该变量。

语句格式如下:

read 变量名   

举例如下:

//接收用户的一个输入,输入的是一个文件名,然后,打印该文件的详细信息
read -p “please input fileName: ”  FILENANE
ls -l $FILENAME 

//依次接收用户输入两个数据
read  VAR1 VAR2

2.  算数运算符 expr

在 shell 编程中,加减乘数运算符如下:

c=` expr $a + $b`     # 一定记住 $a和+和$b之间必须要打**空格**

c=`expr $a \* $b`     # =两边不能有空格

c=`expr $a / $b`

c=`expr $a - $b`

c=`expr $a % $b` 

举例如下:

接收用户输入两个数据,计算这两个数据的平方差
#! /bin/bash
read NUM1 NUM2
dec=`expr $NUM1 \* $NUM1 + $NUM2 \* $NUM2`
echo $dec

3.   测试命令

语法格式如下:

test 命令

或者

[ 命令 ]   //[]与命令的前后都要有空格

(1)   字符串  

str1 = str2   //比较两个字符串是否相等

str1 != str2  //比较两个字符串不相等

-z  str   //为空

-n  str   //不为空

(2)   两个整数

data1 -eq data2   //相等

data1 -ne data2   //不等于

data1 -gt data2   //大于

data1 -lt data2    //小于

data1 -ge data2   //大于等于

data1 -le data2   //小于等于

(3)   文件

-d filename                       //文件是否为目录

-e filename                       //文件或目录是否存在

-r filename                        //是否有可读权限

-w filename                      //文件是否可写

-x filename                       //文件是否可执行

filename1 -nt filename2   //filename1 是否比 filename2 新

filename1 -ot filename2   //filename1 是否比 filename2 旧   

总结:

shell 脚本存在的意义在于: 在项目开发中,用于实现逻辑控制使用的。所以,在 shell 编程中,算数运算不太常用,常用的是一些有助于项目编译运行方便使用的,对文件的操作。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值