shell脚本和编程学习|青训营笔记

148 阅读2分钟

今天天气非常晴朗,开启一天打卡学习~

Shell是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核。 (Shell语言是一种解释形语言,即写完不需要编译就可以运行。)

关于shell的一些基础概念理解

shell脚本就是一种专门使用shell编写的脚本程序,它虽然没有C++、Java、Python等一系列高级语言功能强大,但是在服务器运维领域以及嵌入式开发领域,shell脚本具有举足轻重的地位。

  • 脚本语言定义:

为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。

程序代码即是最终的执行文件,只是这个过程需要解释器的参与,所以说脚本语言与解释型语言有很大的联系。脚本语言通常是被解释执行的,而且程序是文本文件。典型的脚本语言有,JavaScript,Python,shell等。

shell编写的基本步骤

  • 建立shell文件
  • 赋予shell文件可执行程序权限(使用chmod命令修改权限)
  • 执行shell文件(直接运行赋予权限后的二进制文件)

shell变量

  • Linux Shell中的变量分为,系统变量和用户自定义变量。
  • 系统变量:$HOME$PWD$SHELL$USER等等,比如:echo $HOME等等.
  • 显示当前shell中所有变量: set

变量定义

  • 定义变量: 变量名=值
  • 撤销变量: unset变量
  • 声明静态变量: readonly变量,注意:不能unset

判断条件

两个整数之间比较

  • 字符串比较
  • -lt 小于(less than)
  • -le 小于等于(less equal)
  • -eq 等于(equal)
  • -gt 大于(greater than)
  • -ge 大于等于(greater equal)
  • -ne 不等于(Not equal)

按照文件权限进行判断

  • -r 有读的权限(read)
  • -w 有写的权限(write)
  • -x 有执行的权限(execute)

按照文件类型进行判断

  • -f 文件存在并且是一个常规的文件(file)
  • -e 文件存在(existence)
  • -d 文件存在并是一个目录(directory)

多条件判断(&& 表示前一条命令执行成功时,才执行后一条命令,|| 表示上一条命令执行失败后,才执行下一条命令)