首页 > 其他分享 >编写一个接受两个字符串参数的脚本。脚本应检查第一个字符串是否包含第二个参数的子串

编写一个接受两个字符串参数的脚本。脚本应检查第一个字符串是否包含第二个参数的子串

时间:2023-09-22 12:33:59浏览次数:32  
标签:脚本 子串 string echo substring 参数 字符串 main

方法一:

#!/bin/bash

# 检查是否提供了足够的参数
if [ $# -ne 2 ]; then
  echo "用法: $0 <主字符串> <子串>"
  exit 1
fi

# 从命令行参数中获取主字符串和子串
main_string="$1"
substring="$2"

# 检查主字符串是否包含子串
if [[ $main_string == *$substring* ]]; then
  echo "$main_string 包含子串 $substring"
else
  echo "$main_string 不包含子串 $substring"
fi

 

方法二:

#!/bin/bash

# 检查是否提供了足够的参数
if [ $# -ne 2 ]; then
  echo "用法: $0 <主字符串> <子串>"
  exit 1
fi

# 从命令行参数中获取主字符串和子串
main_string="$1"
substring="$2"

# 使用grep检查主字符串是否包含子串
if echo "$main_string" | grep -q "$substring"; then
  echo "$main_string 包含子串 $substring"
else
  echo "$main_string 不包含子串 $substring"
fi

  

标签:脚本,子串,string,echo,substring,参数,字符串,main
From: https://www.cnblogs.com/wutao-007/p/17722043.html

相关文章

  • 一次性搞懂JS字符串截取方法substring()、slice()以及substr()的用法和区别
    substring()和slice()都接受两个参数,“start”和“end”。“start”表示截取的开始位置,“end”表示结束的位置(不包括该位置的字符,也就是前要后不要)。如果不传参数,则返回字符串本身的一个副本。 如果只传一个参数,则从该位置开始,截取到字符串的末尾。 如果传递两个参数,则......
  • Echarts图表基本参数设置说明
    ECharts是一款强大的数据可视化库,可以通过JavaScript构建交互式和动态的图表。在使用ECharts进行图表绘制时,我们可以通过设置各种参数来达到我们想要的效果。下面是对ECharts中常用的图表参数的详细介绍说明。1.全局配置参数:-title:图表标题,可以设置主标题和副标题。......
  • cmake之解析宏或者函数参数
    本文将介绍cmake如何解析函数或者宏对应的参数列表语法查询打开cmake手册,查询cmake_parse_arguments关键字即可,如下图语法cmake_parse_arguments(<prefix><options><one_value_keywords><multi_value_keywords><args>...)cmake_parse_argum......
  • Shell中如何分割字符串
    使用字符替换来分割字符串tr或者类似实现字符串替换的工具,如sed。echo"go:python:rust:js"|tr":""\n"#使用tr将分隔符:替换成换行符\n使用tr将分隔符:替换成换行符\n。使用cut分割字符串echo"go:python:rust:js"|cut-d":"-f1echo"go:pyth......
  • 计算机网络各报文段参数
    各报文段需要记忆的内容HTTP报文HTTP报文分为请求报文&响应报文请求报文:1.请求行:请求方法(常用get/post)、请求URL、HTTP协议版本2.首部行3.请求体/实体主体响应报文:1.状态行2.响应头部3.响应体 UDP数据报1.首部8B,由4个字段组成(都是2B)2.长度字段包括首部+数据部分3.检验和检验......
  • 拓端tecdat|R语言贝叶斯非参数模型:密度估计、非参数化随机效应meta分析心肌梗死数据|
    原文链接:http://tecdat.cn/?p=23785原文出处:拓端数据部落公众号最近我们被客户要求撰写关于贝叶斯非参数模型的研究报告,包括一些图形和统计输出。概述最近,我们使用贝叶斯非参数(BNP)混合模型进行马尔科夫链蒙特卡洛(MCMC)推断。在这篇文章中,我们通过展示如何使用具有不同内核的非......
  • zookeeper中zoo.cfg参数解析
    ticktime=20002000为通信心跳inilimit=10lf(leadersandfollow)初始通信时限10*2000添加配置server.A=B:C:DA是一个数字表示第几号服务器B是这个服务器的地址C是这个服务器follow和leader交换信息的端口D是万一服务器挂了需要一个端口重新来进行选举,选出一个新的leader,这......
  • Python中*args(参数)和 **kwargs(关键字参数)的区别
    *args--Python可以使用*args传递多个参数,但是不能使用它来传递键值对(字典)参数。**kwargs--Python另一个名为**kwargs的参数允许我们将字典类型的键值对参数传递给函数。注:两者均支持可变数量的参数传递。......
  • 小程序二唯码参数
    1.为什么小程序码是圆的放射型(菊花码)?专利原因:a.方形二维码的专利属于别人,微信没有专利区分普通二维码,减少用户扫码额疑虑:a.将小程序和普通的二维码进行区分:(1).现在大家看到二维码,都不敢随便扫(2).如果提前知道二维码属于哪一类,对手机有没有危害性,这样就会减少......
  • shell批量执行命令与文件传输脚本
    shell批量执行命令与文件传输脚本需求:对未进行主机信任操作的服务器进行批量操作实现:由于ssh只能在交互模式中输入服务器密码进行登录登操作,不便于进行大批量服务器进行巡检或日志采集。sshpass恰好又解决了这个问题,使用ssh-ppasswd可以实现命令行输入密码操作,便于进行规模......