首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带句号字符的bash shell脚本连接字符串

带句号字符的bash shell脚本连接字符串
EN

Stack Overflow用户
提问于 2016-01-29 14:57:13
回答 1查看 3.9K关注 0票数 1

我正在尝试创建以下字符串

代码语言:javascript
复制
Beta-3.8.0

但是无论我做什么,shell脚本总是省略.句点字符。

代码语言:javascript
复制
echo "$readVersion"

if [ -z $readVersion ]
then
    echo "readVersion is empty"
    exit 1
fi;

IFS=.
set $readVersion
newVersion=$(echo "$2 + 1" | bc)
newBranch="Beta-$1.$newVersion.$3"
echo $newBranch

指纹:

3.8.0

Beta-3 9 0

我也试过

代码语言:javascript
复制
newBranch='Beta-'$1'.'$newVersion'.'$3
or
newBranch="Beta-{$1}.{$newVersion}.{$3}"

虽然这似乎打印了正确的值echo "$1.$newVersion.$3",为什么变量不能工作?

我需要稍后在脚本中使用的变量..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-29 15:02:01

一旦完成,您就可以保存和恢复IFS

代码语言:javascript
复制
oldIFS=$IFS
IFS=.
set $readVersion
newVersion=$(echo "$2 + 1" | bc)
IFS=$oldIFS
newBranch="Beta-$1.$newVersion.$3"
echo "$newBranch"

也可以在打印时引用:

代码语言:javascript
复制
echo "$newBranch"

前者是一个更好的主意,海事组织,因为它传达了你的意图,并将使其余的代码使用“正确”的IFS。后者只是绕过了这个问题。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35087453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档