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

相关文章

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

Linux find 命令完全指南及核心用法

《Linuxfind命令完全指南及核心用法》find是Linux系统最强大的文件搜索工具,支持嵌套遍历、条件筛选、执行动作,下面给大家介绍Linuxfind命令完全指南,感兴趣的朋友一起看看吧... 目录一、基础搜索模式1. 按文件名搜索(精确/模糊匹配)2. 排除指定目录/文件二、根据文件类型筛选三、时间

使用mvn deploy命令上传jar包的实现

《使用mvndeploy命令上传jar包的实现》本文介绍了使用mvndeploy:deploy-file命令将本地仓库中的JAR包重新发布到Maven私服,文中通过示例代码介绍的非常详细,对大家的学... 目录一、背景二、环境三、配置nexus上传账号四、执行deploy命令上传包1. 首先需要把本地仓中要

Windows命令之tasklist命令用法详解(Windows查看进程)

《Windows命令之tasklist命令用法详解(Windows查看进程)》tasklist命令显示本地计算机或远程计算机上当前正在运行的进程列表,命令结合筛选器一起使用,可以按照我们的需求进行过滤... 目录命令帮助1、基本使用2、执行原理2.1、tasklist命令无法使用3、筛选器3.1、根据PID

Linux系统之authconfig命令的使用解读

《Linux系统之authconfig命令的使用解读》authconfig是一个用于配置Linux系统身份验证和账户管理设置的命令行工具,主要用于RedHat系列的Linux发行版,它提供了一系列选项... 目录linux authconfig命令的使用基本语法常用选项示例总结Linux authconfi

通过Python脚本批量复制并规范命名视频文件

《通过Python脚本批量复制并规范命名视频文件》本文介绍了如何通过Python脚本批量复制并规范命名视频文件,实现自动补齐数字编号、保留原始文件、智能识别有效文件等功能,听过代码示例介绍的非常详细,... 目录一、问题场景:杂乱的视频文件名二、完整解决方案三、关键技术解析1. 智能路径处理2. 精准文件名

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re