shell编程

语言分为:

编译型语言:先要事先转换成可执行格式

解释型语言:边解释边执行

变量:shell是弱类型编程语言,变量不需要先指明类型及初始化,而是由上下文决定类型

bash变量类型:

环境变量

本地变量

位置变量

特俗变量

本地变量:作用域为整个bash进程

VARNAME=value

局部变量:作用域当前代码

local VARNAME=value

环境变量:作用域为当前shell进程及子进程

export VARNAME=value

条件判断

hash中如何实现条件判断?

条件测试类型:

整数测试

字符测试

文件测试

条件测试的表达式:

[ expression ]

` expression `

test expression

整数比较:

-eq:测试两个整数是否相等

-ne: 不相等

-gt: 大于

-lt:小于

-ge:大于等于

-le:小于等于

命令间逻辑关系:

逻辑与:&&

逻辑或:||

逻辑非:!

条件判断:控制结构

if 判断条件; then

statements

elif 判断条件; then

statements

else

statements

fi

shell中如何进行算术运算:

a=3

b=6

let 算术运算表达式

let c=$a+$b

$[算术运算表达式】

c=$[$a+$b]

$((算术运算表达式))

c==$(($a+$b))

expr 算术运算表达式,表达式中各操作数和操作符之间要有空格,而且要使用命令引用

c=`expr $a + $b`

转载于:https://blog.51cto.com/xujingbo/1826526

shell编程详解(一)相关推荐

  1. Linux之Shell 编程详解(真的超详细哦)

    Shell 编程 为什么要学习 Shell 编程 [至少要能看懂代码] Shell 是啥 Shell 脚本的执行方式 编写第一个 Shell 脚本 脚本的常用执行方式 Shell 的变量 Shell ...

  2. Shell test命令(Shell [])详解,附带所有选项及说明

    test 是 Shell 内置命令,用来检测某个条件是否成立.test 通常和 if 语句一起使用,并且大部分 if 语句都依赖 test. test 命令有很多选项,可以进行数值.字符串和文件三个方 ...

  3. shell脚本详解(十一)——awk文本和数据处理编程语言

    shell脚本详解(十一)--awk文本和数据处理编程语言 一.awk命令 – 文本和数据进行处理的编程语言 1.工作原理 2.命令格式 3.awk常见的内建变量(可直接使用) 4.按行输出文本 5. ...

  4. adb shell 命令详解,android, adb logcat

    http://www.miui.com/article-275-1.html http://noobjava.iteye.com/blog/1914348 adb shell 命令详解,android ...

  5. PHP SOCKET编程详解

    这篇文章主要介绍了PHP SOCKET编程详解,需要的朋友可以参考下 1. 预备知识 一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实 ...

  6. iOS-NSThread编程详解

    note:文明看帖转载是对自己的尊重也是对学者的鼓励,欢迎批评讨论 iOS多线程-NSThread编程详解 再iOS开发中存在三种比较常用的实现多线程编程的方法,NSThread,NSOperatio ...

  7. java 远程shell脚本_java通过ssh连接服务器执行shell命令详解及实例

    java通过ssh连接服务器执行shell命令详解 java通过ssh连接服务器执行shell命令:JSch 是SSH2的一个纯Java实现.它允许你连接到一个sshd 服务器,使用端口转发,X11转 ...

  8. Linux网络编程---详解TCP

    Linux网络编程---详解TCP的三次握手和四次挥手_shanghx_123的博客-CSDN博客_tcp的协议数据单元被称为 TCP协议详解(TCP报文.三次握手.四次挥手.TIME_WAIT状态. ...

  9. MFC下CSocket编程详解

    MFC下CSocket编程详解:  1. 常用的函数和注意事项(详细的函数接口说明请查看MSDN): CSocket::Create 初始化(一般写服务器程序都不要用为好,用下面的 CSocket:: ...

最新文章

  1. Numpy的基本操作
  2. 德式秘籍:产品总监最该学会的管理方法是什么?(一)
  3. EntityFramework进阶(三)- 根据IQueryable获取DbContext
  4. Windows上使用Git管理文件
  5. 亚马逊Rekognition发布针对人脸检测、分析和识别功能的多项更新
  6. 代码神注释鉴赏,喜欢拿去用
  7. win10右键闪退到桌面_WIN10设置闪退,桌面右键个性化显示设置等均无效
  8. 论文浅尝 | 如何利用外部知识提高预训练模型在阅读理解任务中的性能
  9. vim 配置_「go」 配置vim用于go 开发
  10. IDC:中小企业IT产品及服务支出预计到2020年突破6680亿美元
  11. LeetCode—Python版链表简单题(一)
  12. 内存映射(Memory Map)
  13. 2019深圳杯获奖论文_深圳杯数学建模A题获奖论文
  14. 各种字体下载地址和移动端支持字体简析
  15. 为什么html字体之间有间隔,css字体间隔怎么调整?css文字间隔的调整方法
  16. Monte Carlo Algorithms
  17. 微信小程序把view居中_微信小程序view居中
  18. 再见PDF提取收费!我用100行Python代码搞定!
  19. 计算机专业校招能去哪哪里,BAT三大互联网巨头最喜欢去哪些学校招人?
  20. 几个吓尿了的公众号,前几个你不可能没听过

热门文章

  1. elasticsearch文档-modules
  2. Linux-Vim使用技巧
  3. 子网划分 超网、路由汇总计算
  4. PHP json_decode 对 JSON 格式的字符串进行编码并获取对应的值
  5. 3Delight粒子渲染,真快。
  6. c# DirectoryInfo 类和 FileInfo 类
  7. js读取解析JSON类型数据【申明:来源于网络】
  8. 暑期训练狂刷系列——Foj 1894 志愿者选拔 (单调队列)
  9. monkey的具体使用及详细说明
  10. CSS之简单的双引号