Bash 连接字符串

2023-11-04

在 Bash 中连接字符串就像将它们与双引号 (“ ”)特点。但是,如果您的字符串包含多个单词或包含特殊字符,您可能需要使用不同的方法。幸运的是,Bash 编程语言提供了多种连接字符串的方法。

本文探讨了在 Bash 脚本和程序中组合字符串的五种常见方法。继续阅读以了解有关在 Bash 中连接字符串的更多信息以及哪种方法最适合您的具体情况。

连接字符串

在 Bash 中组合字符串的最简单方法是使用双引号 (“ ”)特点。您可以将字符串括在双引号内并将它们组合起来形成单个字符串。这对于组合不需要任何特殊格式的短字符串很有用。下面的示例演示如何使用双引号将两个短字符串组合成一个长字符串。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#/usr/bin/env bash
# 用于连接字符串的示例 shell 脚本
 
# 声明变量
STR1=“欢迎”
STR2=“技术管理”
 
# 连接两个字符串
STR3=“$STR1$STR2”
echo "$STR3"
 
# 你甚至可以在字符串之间添加空格
STR3=“$STR1 $STR2”  
echo "$STR3"

echo 命令将打印结果字符串。


Output
WelcomeTecadmin Welcome Tecadmin

将字符串变量与文字连接起来

文字代表一个固定值。我们还可以将文字字符串与变量值连接起来,而不是连接两个字符串变量。例如,输入用户的名字并在其前面加上“Welcome”文字字符串作为前缀。

1
2
3
4
5
6
7
8
9
10
11
#/usr/bin/env bash
 
# 连接变量的 shell 脚本
# 带有文字字符串
 
# 获取用户输入并存储到变量
read -p “你的名字是什么: ” STR1
 
# 连接字符串
STR2=“欢迎${STR1}”
echo "$STR2"

执行上面的脚本,它会提示你输入你的名字。然后将“Welcome”作为前缀连接到输入字符串并打印结果。


Output
Enter your first name: Rahul Welcome Rahul

连接字符串+=操作员

在通用编程语言中+=将 RHS 值添加到 LHS 中。您还可以使用此方法将 RHS 字符串变量连接到 LHS 字符串。

1
2
3
4
5
6
7
8
9
10
11
#/usr/bin/env bash
# 用于连接字符串的示例 shell 脚本
 
# 声明变量
STR=“欢迎来到”
 
# 将另一个字符串连接到该变量。
STR+=“技术管理员”
 
# 显示结果字符串
echo $STR

这将打印:Welcome to TecAdmin

使用 Printf 命令

在巴什中,print是用于格式化数据并将数据打印到标准输出的命令。这-v选项用输出初始化变量而不是在输出上打印。

1
2
3
4
5
6
7
8
9
10
11
12
13
#/usr/bin/env bash
 
# 用于连接字符串的示例 shell 脚本
# 使用打印命令。
 
# 声明变量
PREFIX=“先生你好。 ”
 
# 将另一个字符串连接到该变量。
printf -v STR “$前缀拉胡尔”
 
# 显示结果字符串
echo $STR

这将打印:Hello Mr. Rahul

使用循环

当输入字符串的数量未定义时,您需要将它们连接成一个字符串。 while 循环将帮助您使用连接 (+=) 运算符。

例如,您需要读取文件的所有行并将它们连接在一个字符串中。为此,我们将逐行读取文件内容并将它们连接起来。

1
2
3
4
5
6
7
8
9
10
11
12
#/usr/bin/env bash
 
# 用于连接字符串的示例 shell 脚本
# 使用 while 循环
 
# 声明变量
while read LINE; do
  STR+="$LINE "
done < data.txt
 
# 显示结果字符串
echo $STR

结论

本文探讨了在 Bash 脚本和程序中组合字符串的五种常见方法。组合字符串的最简单方法是使用双引号字符。您还可以使用 for 循环命令迭代一系列单词并将它们组合成一个字符串。 join (+) 命令是 Bash 内置命令,可用于将一系列项目组合成单个字符串。 BASH 脚本语言允许您执行更复杂的字符串操作,包括组合变量、计算等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Bash 连接字符串 的相关文章

随机推荐

  • Linux统计某文件夹下文件、文件夹的个数

    http blog sina com cn s blog 464f6dba01012vwv html 统计某文件夹下文件的个数 ls l grep wc l 统计某文件夹下目录的个数 ls l grep wc l 统计文件夹下文件的个数 包
  • 瞧瞧,这样的「函数」才叫 Pythonic

    在机器学习中 我们经常需要使用类和函数定义模型的各个部分 例如定义读取数据的函数 预处理数据的函数 模型架构和训练过程的函数等等 那么什么样的函数才是漂亮的 赏心悦目的代码呢 本期教程 会从命名到代码量等六方面探讨如何养成美妙的函数 文末有
  • Python之序列

    序列是一种数据存储方式 用来存储一系列的数据 在内存中 序列就是一块用来存放多个值的连续空间 比如一个整数序列 10 20 30 40 可以这样表示 由于Python3中一切皆对象 在内存中实际是按照如下方式储存的 a 10 20 30 4
  • windows自带虚拟机无法正确安装软件 解决方案

    使用的虚拟机版本Ubuntu 20 04 4 LTS 错误描述 ruby DESKTOP LP8NQUK tmp test sudo apt install imagemagic 6 q16 sudo password for ruby R
  • Linux如何用ftp传输文件【ftp命令】

    Linux如何用ftp传输文件 ftp命令 Windows Linux 带端口的ftp命令 使用 FTP 下载文件 使用 FTP 上传文件 关闭FTP连接 Windows 在Windows系统中 可以用可视化的ftp来传输文件 或者下在文件
  • 第二章:25+ Python 数据操作教程(第八节如何从 PANDAS DATAFRAME 中删除一列或多列)

    在本教程中 我们将介绍如何从 pandas 数据框中删除或删除一个或多个列 是一个用于数据操作的 python 包 它具有以下数据任务的几个功能 目录 在 python 中删除一列 在 Python 中删除多列 如何从 pandas Dat
  • tp5 使用_initialize做验证时验证失败不能直接返回数据和打断程序运行

    在项目开发时写了一个基类 让其他控制器都继承这个类 当访问控制器时基类某些验证时 直接截断返回错误不执行控制器中的解决办法 失败写法 return json encode data 正确写法 echo json encode data ex
  • 利用XSS获取cookie

    如果web应用在用户输入的地方没有过滤特殊字符 比如 lt gt
  • MapReduce思想的学习

    这学期教hadoop 发现在备课MapReduce思想的时候 查阅资料基本上所有博客都没有真正讲出MapReduce的思想 而只是把它的计算过程讲出来 甚至有些说法还是误人子弟的 所以我就一直在想如何能把MapReduce的思想讲得通俗易懂
  • 大数据应用——zookeeper集群部署

    本地模式安装 安装前准备 1 安装 JDK 拷贝 apache zookeeper 3 5 7 bin tar gz 安装包到 Linux 系统下 解压到指定目录 hadoop hadoop101 software tar zxvf apa
  • 编译警告"struct declared inside parameter list"

    近来在阅读linux 2 6 37中cgroup的相关代码 读到include linux cgroup h的开头时犯了嘀咕 include
  • laravel基础学习笔记--Blade 模板

    laravel基础学习笔记 Blade 模板 Blade 视图文件都将被编译成原生的 PHP 代码并缓存起来 除非它被修改 否则不会重新编译 这就意味着 Blade 基本上不会给你的应用增加任何负担 Blade模板 section side
  • 2021华为杯数学建模B题“空气质量预报二次建模” 预处理思路+Python代码

    简介 前阵子和小伙伴做了2021年华为杯研赛的B题 空气质量预报二次建模 发现数据预处理一块挺有意思的 涵盖了常规的缺失值 随机缺失 指标缺失 列缺失 条目缺失 行缺失 异常值 偏离正态分布 非负数据为负 以及不常规的协同处理等 一直想着有
  • Ubuntu 16.04 手动用 apt-get 在线安装 Redis 5.0 最新版

    目录 安装 Redis 添加 Redis 源 开始安装 Redis 启动 Redis 常用基本命令 配置 Redis 密码 修改配置文件 设置 Redis 密码 测试 Redis 密码 Redis 全称 REmote DIctionary
  • angular 小试

    测试token var app angular module myApp ngRoute 构造拦截器 添加token信息 3 app config function httpProvider 构造拦截器 var intercepter fu
  • 如何在 Gmail 中启用不太安全的应用程序设置

    在Google帐户中 启用不太安全的应用程序功能可以使黑客更容易进入您的帐户 一般来说 Gmail 用户在使用其帐户通过 Google STMP 服务器发送电子邮件时启用此功能 我们从不建议启用此功能 但在某些情况下 有必要在 Gmail
  • 确保网站安全的 5 个最佳 WordPress 安全插件

    由于 WordPress 的巨大受欢迎 难怪它引起了黑客的兴趣 WordPress 拥有自己的安全措施 这些措施会通过自动更新功能不断更新 但这就足够了吗 如果您确实想确保您的 WordPress 网站安全 您应该研究 WordPress
  • 如何在 Ubuntu 20.04 上安装 OpenOffice

    Apache OpenOffice 是一个开源办公应用软件套件 可用于基于 Unix 的系统 您可以自由使用文档 电子表格 演示文稿和绘图软件 OpenOffice 是由 Apache 基金会构建的一个项目 提供最新的功能和安全更新 本教程
  • PHP – 获取查询字符串值 ($_SERVER['QUERY_STRING'])

    查询字符串是通过 Web 浏览器访问的 url 的一部分 使用查询字符串 我们将参数传递给网页 通过本文 我们将帮助您了解如何使用 php 脚本获取查询字符串的值 获取查询字符串 我们可以从以下位置获取 url 查询字符串值 SERVER数
  • Bash 连接字符串

    在 Bash 中连接字符串就像将它们与双引号 特点 但是 如果您的字符串包含多个单词或包含特殊字符 您可能需要使用不同的方法 幸运的是 Bash 编程语言提供了多种连接字符串的方法 本文探讨了在 Bash 脚本和程序中组合字符串的五种常见方