http://c.biancheng.net/view/1114.html
在脚本语言中,字符串的拼接(也称字符串连接或者字符串合并)往往都非常简单,例如:

  • 在 PHP 中,使用.即可连接两个字符串;
  • 在 JavaScript 中,使用+即可将两个字符串合并为一个。

然而,在 Shell 中你不需要使用任何运算符,将两个字符串并排放在一起就能实现拼接,非常简单粗暴。请看下面的例子:

  1. #!/bin/bash
  2. name="Shell"
  3. url="http://c.biancheng.net/shell/"
  4. str1=$name$url #中间不能有空格
  5. str2="$name $url" #如果被双引号包围,那么中间可以有空格
  6. str3=$name": "$url #中间可以出现别的字符串
  7. str4="$name: $url" #这样写也可以
  8. str5="${name}Script: ${url}index.html" #这个时候需要给变量名加上大括号
  9. echo $str1
  10. echo $str2
  11. echo $str3
  12. echo $str4
  13. echo $str5

运行结果:
Shellhttp://c.biancheng.net/shell/
Shell http://c.biancheng.net/shell/
Shell: http://c.biancheng.net/shell/
Shell: http://c.biancheng.net/shell/
ShellScript: http://c.biancheng.net/shell/index.html

对于第 7 行代码,$name 和 $url 之间之所以不能出现空格,是因为当字符串不被任何一种引号包围时,遇到空格就认为字符串结束了,空格后边的内容会作为其他变量或者命令解析,这一点在《Shell字符串》中已经提到。

对于第 10 行代码,加{ }是为了帮助解释器识别变量的边界,这一点在《Shell变量》中已经提到。

Shell 这种拼接字符串的方式和 Python 非常类似,Python 既支持用+拼接字符串,也支持将两个字符串放在一起,读者可以猛击《Python字符串》了解详情。

关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。内含一款搜索神器,免费下载全网书籍和视频。

[转帖]Shell字符串拼接(连接、合并)的更多相关文章

  1. shell 字符串拼接 获取自身文件名 日志记录

    shell  字符串拼接 获取自身文件名 日志记录 [root@hadoop2 xiaole_chk_url]# sh a.sh123.loga.sh[root@hadoop2 xiaole_chk_ ...

  2. Linux - Shell - 字符串拼接

    概述 shell 的字符串拼接 1. 字符串声明 概述 字符串的基本操作 脚本 1 # 声明字符串 str01="str01" echo ${str01} # 单引号也可以 # 不 ...

  3. shell 字符串拼接

    #!/bin/bash name="Shell" url="http://c.biancheng.net/shell/" str1=$name$url #中间不 ...

  4. shell字符串拼接

    name="Shell" url="http://c.biancheng.net/shell/" str1=$name$url #中间不能有空格 str2=&q ...

  5. python文本 拼接或合并字符串

    python文本 拼接.合并字符串 场景: 拼接.合并字符串 在这个场景中,我们首先想到的当然是使用+或者+=将两个字符串连接起来 >>> a='a'    >>> ...

  6. 学习Linux shell脚本中连接字符串的方法

    这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...

  7. VBA中字符串连接/字符串拼接中“&”和“+”的区别

    VBA中字符串连接/字符串拼接中“&”和“+”的区别   在VBA中用于字符串连接的只有“&”和“+”两种运算符. 1.“&”是强制性连接,就是不管什么都连接. 2.“+”是对 ...

  8. .Net用字符串拼接实现表格数据相同时合并单元格

    前言 最近在做项目通过GridView或Repeater绑定数据,如果两行或若干行某列值相同,需要进行合并单元格,但是实现过程中想到了字符串拼接,于是就没用绑定数据控件,而是用了html结合字符串实现 ...

  9. Linux中shell字符串分隔、字符串替换、字符串拼接

    1.从properties文件中读取变量 SERVER_NAME=`sed '/project.config/!d;s/.*=//' conf/dubbo.properties | tr -d '\r ...

  10. shell awk命令字符串拼接

    本节内容:awk命令实现字符串的拼接 输入文件的内容: TMALL_INVENTORY_30_GROUP my163149.cm6 3506 5683506 mysql-bin.000013 3273 ...

随机推荐

  1. Triple DES 加密解密技术解析

    摘要:本文介绍了Triple DES加密解密技术,通过实例演示了加密和解密过程,并对算法原理进行了简要分析.同时,探讨了Triple DES在现代信息安全领域的应用和局限性. 3DES(Triple ...

  2. vue部署项目报错导致空白页解决

    在nginx上部署项目出现空白页并报错 解决方法: 在vue的vue.config.js文件中 改成:module.exports = {publicPath: './'}

  3. Java程序接入ChatGPT

    目录 0 前言 1 还想体验的小伙伴可以试试 2 Java接入前准备 3 官方支持接入语言 4 调用费用 5 接口调用说明 6 代码实现 6.1 postman调用 6.2 Java调用 7 小结 0 ...

  4. 《华为云DTSE》期刊2023年第二季—HDC.Cloud 2023专刊

    本文分享自华为云社区<<华为云DTSE>期刊2023年第二季-HDC.Cloud 2023专刊>,作者: HuaweiCloudDeveloper . AI技术风起云涌,百家争 ...

  5. 掌数科技携手华为云GaussDB,助力金融科技创新,联合打造行业标杆

    本文分享自华为云社区<掌数科技携手华为云GaussDB,助力金融科技创新,联合打造行业标杆>,作者:GaussDB 数据库 . 近日,在华为开发者大会2023(Cloud)的"G ...

  6. 【乘风破浪的开发者】丁一超:从AI实战营出发探索未知的AI世界

    摘要:从年初的不知不觉进入AI学习的道路,到认识并熟练使用ModelArts平台.虽然只有短短的半年,但这半年的探索学习,让丁一超看清了未来的路在何方. 从招聘网站上输入"人工智能工程技术人 ...

  7. 实践案例丨Pt-osc工具连接rds for mysql 数据库失败

    [现象] 主机可以telent 通rds 端口,并且使用mysql-client 连接正常: 如下图所示:使用pt-osc工具连接时,一直没有响应,一直卡在哪里 等了4-5分钟左右后,会有响应,如下图 ...

  8. 这8个JS 新功能,你应该去尝试一下

    摘要:本文主要介绍几个已经进入stage4的提案,这几个提案有望在2022年逐步纳入标准. 本文分享自华为云社区<2022 年你应该尝试的 8个 JavaScript 新功能>,作者:前端 ...

  9. 深度克隆从C#/C/Java漫谈到JavaScript真复制

    如果只想看js,直接从JavaScript标题开始. 在C#里面,深度clone有System.ICloneable.创建现有实例相同的值创建类的新实例 克隆原理 值类型变量与引用类型变量 如果我们有 ...

  10. PPT 难吗

    多看 http://www.zcool.com.cn/ http://www.huaban.com