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

相关文章

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不

bat脚本启动git bash窗口,并执行命令方式

《bat脚本启动gitbash窗口,并执行命令方式》本文介绍了如何在Windows服务器上使用cmd启动jar包时出现乱码的问题,并提供了解决方法——使用GitBash窗口启动并设置编码,通过编写s... 目录一、简介二、使用说明2.1 start.BAT脚本2.2 参数说明2.3 效果总结一、简介某些情

PHP执行php.exe -v命令报错的解决方案

《PHP执行php.exe-v命令报错的解决方案》:本文主要介绍PHP执行php.exe-v命令报错的解决方案,文中通过图文讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录执行phpandroid.exe -v命令报错解决方案执行php.exe -v命令报错-PHP War

CentOS系统使用yum命令报错问题及解决

《CentOS系统使用yum命令报错问题及解决》文章主要讲述了在CentOS系统中使用yum命令时遇到的错误,并提供了个人解决方法,希望对大家有所帮助,并鼓励大家支持脚本之家... 目录Centos系统使用yum命令报错找到文件替换源文件为总结CentOS系统使用yum命令报错http://www.cppc

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

30常用 Maven 命令

Maven 是一个强大的项目管理和构建工具,它广泛用于 Java 项目的依赖管理、构建流程和插件集成。Maven 的命令行工具提供了大量的命令来帮助开发人员管理项目的生命周期、依赖和插件。以下是 常用 Maven 命令的使用场景及其详细解释。 1. mvn clean 使用场景:清理项目的生成目录,通常用于删除项目中自动生成的文件(如 target/ 目录)。共性规律:清理操作

Linux服务器Java启动脚本

Linux服务器Java启动脚本 1、初版2、优化版本3、常用脚本仓库 本文章介绍了如何在Linux服务器上执行Java并启动jar包, 通常我们会使用nohup直接启动,但是还是需要手动停止然后再次启动, 那如何更优雅的在服务器上启动jar包呢,让我们一起探讨一下吧。 1、初版 第一个版本是常用的做法,直接使用nohup后台启动jar包, 并将日志输出到当前文件夹n

利用命令模式构建高效的手游后端架构

在现代手游开发中,后端架构的设计对于支持高并发、快速迭代和复杂游戏逻辑至关重要。命令模式作为一种行为设计模式,可以有效地解耦请求的发起者与接收者,提升系统的可维护性和扩展性。本文将深入探讨如何利用命令模式构建一个强大且灵活的手游后端架构。 1. 命令模式的概念与优势 命令模式通过将请求封装为对象,使得请求的发起者和接收者之间的耦合度降低。这种模式的主要优势包括: 解耦请求发起者与处理者