打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
5、RedHat7系列——Shell脚本(一)

Shell简介:

Shell终端解释器当作人与计算机硬件之间的翻译器;

Shell脚本命令的工作方式有两种:交互式和批处理

  1. 交互式(Interactive):用户每输入一条命令就立即执行。

  2. 批处理(Batch):由用户事先编写好一个完整的Shell脚本,Shell会一次性执行脚本中诸多的命令。

查看SHELL变量可以发现当前系统已经默认使用Bash作为命令行终端解释器

简单的脚本:

编写简单脚本查看当前工作路径并列出目录下所有的文件及属性信息:

执行脚本:

通过输入完整路径执行脚本(默认会因为权限不足而提示报错信息):

接收用户的参数:

Shell脚本内设了用于接收参数的变量,变量之间可以使用空格间隔。例如$0对应的是当前Shell脚本程序的名称,$#对应的是总共有几个参数,$*对应的是所有位置的参数值,$?对应的是显示上一次命令的执行返回值,而$1、$2、$3……则分别对应着第N个位置的参数值;

示例:

编写脚本:

执行脚本:

判断用户的参数:

Shell脚本中的条件测试语法可以判断表达式是否成立,若条件成立则返回数字0,否则便返回其他随机数值。

按照测试对象来划分,条件测试语句可以分为4种:

  1. 文件测试语句;

  2. 逻辑测试语句;

  3. 整数值比较语句;

  4. 字符串比较语句;

文件测试即使用指定条件来判断文件是否存在或权限是否满足等情况的运算符

文件测试所用的参数:

  1. -d 测试文件是否为目录类型

  2. -e 测试文件是否存在

  3. -f 判断是否为一般文件

  4. -r 测试当前用户是否有权限读取

  5. -w 测试当前用户是否有权限写入

  6. -x 测试当前用户是否有权限执行

示例:

判断目录是否存在,返回0表示存在,否则反之:

判断是否为一般文件,返回0代表存在且为一般文件,否则反之:

在Shell终端中逻辑“与”的运算符号是&&,它表示当前面的命令执行成功后才会执行它后面的命令,

因此可以用来判断/usr/local文件是否存在,若存在则输出指定字样

除了逻辑“与”外,还有逻辑“或”,它在Linux系统中的运算符号为||,表示当前面的命令执行失败后才会执行它后面的命令;

第三种逻辑语句是“非”,在Linux系统中的运算符号是一个叹号(!),它表示把条件测试中的判断结果取相反值;

整数比较运算符仅是对数字的操作,不能将数字与字符串、文件等内容一起操作,而且不能想当然地使用日常生活中的等号、大于号、小于号等来判断;

可用的整数比较运算符:

  1. -eq:是否等于;

  2. -ne:是否不等于;

  3. -gt:是否大于;

  4. -lt:是否小于;

  5. -le:是否等于或小于;

  6. -ge:是否大于或等于;

示例:

字符串比较语句用于判断测试字符串是否为空值,或两个字符串是否相同。它经常用来判断某个变量是否未被定义(即内容为空值);

常见的字符串比较运算符:

  1. =:比较字符串内容是否相同;

  2. !=:比较字符串内容是否不同;

  3. -z:判断字符串内容是否为空;

示例:

判断String变量是否为空值:

当前语系的环境变量值LANG不是en.US时,则输出指定提示:

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
40 个简单又有效的 Linux Shell 脚本示例
Linux学习Day6:编写Shell脚本、配置计划任务
《Linux操作系统》07Shell编程基础
引用 FLASH动作脚本基本知识 - 成靖的日志 - 网易博客
SHELL test [ 命令用法
计算机等级考试三级linux Shell复习
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服