1. 现归纳一下shell中的运算符:   
    +:对两个变量做加法。
    -:对两个变量做减法。
    *:对两个变量做乘法。
    /:对两个变量做除法。
    **:对两个变量做幂运算。
    %:取模运算,第一个变量除以第二个变量求余数。
    +=:加等于,在自身基础上加第二个变量。
    -=:减等于,在第一个变量的基础上减去第二个变量。
    *=:乘等于,在第一个变量的基础上乘以第二个变量。
    /=:除等于,在第一个变量的基础上除以第二个变量。
    %=:取模赋值,第一个变量对第二个变量取模运算,再赋值给第一个变量。

程序:实现数学函数S=3(xy)+4x2+5y+6的运算。在程序中以位置变量的方式输入x与y的值。如下:

   #/bin/bash
#实现S=(xy)+4x**+5y+6的运算 read -p 'input x: ' x
read -p 'input y: ' y
#S = $[*x*y]+$[x***]+$[*y]+
S=$[*x*y+x***+*y+]
echo $S

程序 一

2. 运算常用的命令:

a. 用let指示数学运算。可以先将运算的结果赋值给变量b,运算命令是b=let 1 + 2。然后用echo $b来输出b的值。如果没有let,则会输出1+2。

b. 用$[]表示数学运算。将一个数学运算写到$[]符号的中括号中,中括号中的内容将先进行数学运算。例如命令echo $[1+2],将输出结果3。

c. 用expr改变运算顺序。可以用echo `expr 1 + 2`来输出1+2的结果,用expr表示后面的表达式为一个数学运算。需要注意的是,`并不是一个单引号,而是“Tab”键上面的那个符号。
    d. 用bc表示数学运算。可以结合echo命令一起使用,例如:echo “3.21*2” | bc 来计算 3.21*2 这种浮点运算

e. 使用awk表示数学命令.如:echo 2 | awk '{print $1**32}'

3、关系操作符

<  小于

>  大于

>=  大于等于

<=  小于等于

==  等于

!=  不等于

&&  逻辑与(都对)  

||  逻辑或(任意对,从左往右)

$ 符号在Linux系统里面用于获取一个变量的值,例如:
#!/bin/bash --------指定编译shell环境为bash
STR="Hello World!"----设置STR的变量值为Hello World!
echo $STR ------ 用echo命令读取STR变量的数值。这里如果不加$, 输出结果是STR,加上$,输出结果就是Hello World!。 测试!!!
    比较数字,使用(( )) ###数字与比较符号可以紧邻着
    其他测试使用 [[ ]]  ###里面中括号前后空一格,语法生效
    包含数字比较的混合测试,使用标准语法
程序:验证登录用户与密码是否正确?
验证用户名与密码

  程序:判断文件类型。

判断文件类型

  程序:查询成绩。

   #!/bin/bash

   read -p 'input your score: ' score

   if [ $score -eq  ];then
echo '完美'
elif [ $score -ge -a $score -lt ];then
echo '优秀'
elif [ $score -ge -a $score -lt ];then
echo '良好'
elif [ $score -ge -a $score -lt ];then
echo '再接再厉'
else
echo '别捣乱!' fi

查询成绩

  程序:猜年龄。

   #!/bin/bash
oldboyage= read -p 'input oldboy age: ' age if [ $age -eq $oldboyage ];then
echo '你真牛逼!'
elif [ $age -gt $oldboyage ];then
echo '太大了!'
elif [ $age -lt $oldboyage ];then
echo '太小了'
fi

猜年龄

  程序:while循环。

   #!/bin/bash

   i=

   while ((i<))
do
echo $i
((i++))
sleep $i
done

while循环1

  程序:for循环。

for循环1

   #!/bin/bash

   for i in {..}
do
echo $i
sleep $i
done


1、如何使用vi/vim显示行号(永久):

Day 12 shell语法及程序若干的更多相关文章

  1. 9.12/ css3拓展、js基础语法、程序基本知识、数据类型、运算符表达方式、语句知识点

    css3拓展: <display:none>  将某个元素隐藏       <visibility:hidden>  也是将某个元素隐藏 <display:block&g ...

  2. 读完学会shell语法,shell脚本80%已经学会

    第3章 shell语法讲解 3.1 shell运算讲解 3.1.1 运算符的讲解 3.1.2 shell运算方式的讲解 3.1.2.1 $(())运算 [root@m01 test_init] # a ...

  3. 排序算法--希尔排序(Shell Sort)_C#程序实现

    排序算法--希尔排序(Shell Sort)_C#程序实现 排序(Sort)是计算机程序设计中的一种重要操作,也是日常生活中经常遇到的问题.例如,字典中的单词是以字母的顺序排列,否则,使用起来非常困难 ...

  4. Shell语法规范

    ver:1.0 博客:https://www.cnblogs.com/Rohn 本文介绍了Shell编程的一些语法规范,主要参考依据为谷歌的Shell语法风格. 目录 背景 使用哪一种Shell 什么 ...

  5. shell语法习题练习进阶版

    第4章 shell语法深度习题练习 4.1 使用if,case,函数的方法将服务改成system(centos6) 4.1.1 if方法 4.1.1.1 system实现 4.1.1.1.1 编写代码 ...

  6. Web 开发人员必备的12款 Chrome 扩展程序

    之前已经分享过一些帮助 Web 开发人员和设计师的 Chrome 扩展,这次我们继续展示一组很有用的 Chrome 应用程序.这些免费的 Chrome 应用程序可以简化您的工作流程,为了加快您的工作流 ...

  7. makefile中的shell语法

    在Makefile中写shell代码有点诡异,和不同的shell语法不太一样,如果不了解,看Makefile会莫名其妙.下面总结了一些. 1:尽在Makefile文件的目标项冒号后的另起一行的代码才是 ...

  8. 教你用shell写CGI程序

    以前用shell写过一些cgi的例子.今天向大家介绍一下. CGI是一种接口的标准,并不区分编程语言,也就是说,CGI可以用任何一种语言编写,只要这种语言具有标准输入.输出和环境变量.CGI会将标准输 ...

  9. Hadoop学习笔记之HBase Shell语法练习

    Hadoop学习笔记之HBase Shell语法练习 作者:hugengyong 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令 ...

随机推荐

  1. 四、绘图可视化之Seaborn

    Seaborn-Powerful Matplotlib Extension seaborn实现直方图和密度图 import numpy as np import pandas as pd import ...

  2. zust_第二周——瞎扯系列

    首先来原题列表: A:Gridland http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1037 B:HangOver htt ...

  3. 清北学堂2018DP&图论精讲班 DP部分学习笔记

    Day 1 上午 讲的挺基础的--不过还是有些地方不太明白 例1 给定一个数n,求将n划分成若干个正整数的方案数. 例2 数字三角形 例7 最长不下降子序列 以上太过于基础,不做深入讨论 例3 给定一 ...

  4. Spring框架中的aop操作之一 及aspectjweaver.jar与aopalliance-1.0.jar下载地址 包含beans 注解context 和aop的约束

    (aspect oriented programming面向切面编程) 首先在原有的jar包: 需Spring压缩包中的四个核心JAR包 beans .context.core 和expression ...

  5. 【模板】任意模数NTT

    题目描述: luogu 题解: 用$fft$水过(什么$ntt$我不知道). 众所周知,$fft$精度低,$ntt$处理范围小. 所以就有了任意模数ntt神奇$fft$! 意思是这样的.比如我要算$F ...

  6. (61)zabbix网络发现规则配置实战/详解

    开始配置.首先,我们需要定义发现规则,用于扫描.步骤如下 第一步 Configuration >>Discovery>>Create rule,编辑网络发现规则 如上配置,za ...

  7. ps命令查看子进程

    [root@centos7 log]# ps -f -e -o pid,ppid,pgid,comm PID PPID PGID COMMAND 5070 5068 5070 bash 7169 50 ...

  8. perl的bareword

    perl的bareword可能被认为:label  . 句柄 .函数 . 普通字符串. 上下文不同,解释器有歧义. 最好用 use strict; use warning;

  9. docker apache安装

    文章来源: 1.添加镜像 # docker pull httpd2. 2.创建httpd文件 # mkdir /data/httpd2. 3.启动apache # docker run -it -p ...

  10. LeetCode(72) Edit Distance

    题目 Given two words word1 and word2, find the minimum number of steps required to convert word1 to wo ...