hylan:shell脚本鸡肋--结构化命令

2024-05-02 21:58

本文主要是介绍hylan:shell脚本鸡肋--结构化命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. if-then语句不能测试命令退出状态码之外的条件。
  2. test命令提供了在if-then语句中测试不同条件的途径。
  3. if test condition;then commands;fi
  4. 无需在if-then语句中声明test命令  if [ condition ];then commands;fi
  5. test命令可以判断三类条件:数值比较(bash shell只能处理整数) 字符串比较(将所有的标点和大小写情况都考虑在内)  文件比较(shell编程中最为强大、也是用得最多的比较形式)
  6. 标准数学运算比较功能(equal、greater than、less than):n1 -eq n2    检查n1是否与n2相等    -ge 大于或等于     -gt 大于     -le 小于或等于     -lt 小于     -ne 不等于
  7. 标准字符串比较:str1 = str2  检查str1是否和str2相同    != 不同    < 小    > 大    -n str1 是否非0    -z str1 是否为0
  8. 文件比较功能: -d file 是否存在并是目录    -e 存在    -f 存在并是文件    -r 存在并可读   -s 存在并非空    -w 存在并可写    -x 存在并可执行    -O 存在并属当前用户所有    -G 存在并默认属组与当前用户相同    file1 -nt file2 检查file1是否比file2新    file1 -ot file2 检查file1是否比file2旧
  9.   if-then 格式:
  10. if command
  11. then
  12.       commands
  13. fi
  14.   if-then-else 格式:
  15. if command
  16. then
  17.       commands
  18. else
  19.       commands
  20. fi
  21.   嵌套 if-then 语句 的改进  elif 使用另一个 if-then 语句延续 else 部分 格式:
  22. if command1
  23. then
  24.       commands
  25. elif command2
  26. then
  27.      commands
  28. elif command3
  29. then
  30.       commands
  31. ...
  32. fi
  33.   case 语句格式:
  34. case variable in
  35. pattern1 | pattern2) commands1;;
  36. pattern 3) commands2;;
  37. *) commands;;
  38. esac
  39. 可以通过|(竖线)操作符在一行中分隔出多个模式,星号会捕获所有与已知模式不匹配的值。
  40. 方括号[ ] 是与 test命令 同义的特殊bash命令。
  41. 双括号(( )) 使用另一种操作符进行 高级数学运算。
  42. 双括号命令更多的运算符号: val++ 后增     val-- 后减    ++val 先增    --val 先减    ! 逻辑求反   ~ 位求反    ** 幂运算    << 左移位    >> 右移位    & 位布尔和    |  位布尔或   && 逻辑和   || 逻辑或
  43. 双方括号[[ ]]命令允许高级字符串模式匹配运算。例如: [[ $USER == r* ]]
  44. [ $val1 \> $val2 ]  方括号中>需要转义    VS    (( $val1 ** 2 > 90 ))  双括号中>不需要转义。













这篇关于hylan:shell脚本鸡肋--结构化命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/955222

相关文章

postgresql数据库基本操作及命令详解

《postgresql数据库基本操作及命令详解》本文介绍了PostgreSQL数据库的基础操作,包括连接、创建、查看数据库,表的增删改查、索引管理、备份恢复及退出命令,适用于数据库管理和开发实践,感兴... 目录1. 连接 PostgreSQL 数据库2. 创建数据库3. 查看当前数据库4. 查看所有数据库

利用Python脚本实现批量将图片转换为WebP格式

《利用Python脚本实现批量将图片转换为WebP格式》Python语言的简洁语法和库支持使其成为图像处理的理想选择,本文将介绍如何利用Python实现批量将图片转换为WebP格式的脚本,WebP作为... 目录简介1. python在图像处理中的应用2. WebP格式的原理和优势2.1 WebP格式与传统

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

shell中set -u、set -x、set -e的使用

《shell中set-u、set-x、set-e的使用》本文主要介绍了shell中set-u、set-x、set-e的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录✅ 1. set -u:防止使用未定义变量 作用: 示例:❌ 报错示例输出:✅ 推荐使用场景:✅ 2. se

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb