【发布时间】:2010-02-12 06:51:02
【问题描述】:
我想追加到一个字符串,这样每次我循环它时,它都会在字符串中添加“test”。
就像PHP 你会这样做:
$teststr = "test1\n"
$teststr .= "test2\n"
echo = "$teststr"
返回:
test1
test2
但我需要在 shell 脚本中执行此操作
【问题讨论】:
标签: string bash shell string-concatenation
我想追加到一个字符串,这样每次我循环它时,它都会在字符串中添加“test”。
就像PHP 你会这样做:
$teststr = "test1\n"
$teststr .= "test2\n"
echo = "$teststr"
返回:
test1
test2
但我需要在 shell 脚本中执行此操作
【问题讨论】:
标签: string bash shell string-concatenation
在经典 sh 中,您必须执行以下操作:
s=test1
s="${s}test2"
(该主题有很多变体,例如s="$s""test2")
在 bash 中,您可以使用 +=:
s=test1
s+=test2
【讨论】:
$ string="test"
$ string="${string}test2"
$ echo $string
testtest2
【讨论】:
#!/bin/bash
message="some text"
message="$message add some more"
echo $message
一些文字添加一些更多
【讨论】:
teststr=$'test1\n'
teststr+=$'test2\n'
echo "$teststr"
【讨论】:
VAR=$VAR"$VARTOADD(STRING)"
echo $VAR
【讨论】:
#!/bin/bash
msg1=${1} #First Parameter
msg2=${2} #Second Parameter
concatString=$msg1"$msg2" #Concatenated String
concatString2="$msg1$msg2"
echo $concatString
echo $concatString2
【讨论】:
谢谢伊格纳西奥·巴斯克斯-艾布拉姆斯
为了更好的易用性,我稍作调整:)
放置在脚本顶部
NEW_LINE=$'\n'
然后与其他变量一起轻松使用
variable1="test1"
variable2="test2"
DESCRIPTION="$variable1$NEW_LINE$variable2$NEW_LINE"
或 附加谢谢你 William Pursell
DESCRIPTION="$variable1$NEW_LINE"
DESCRIPTION+="$variable2$NEW_LINE"
echo "$DESCRIPTION"
【讨论】:
DESCRIPTION="${variable1}\n${variable2}\n" 呢?似乎是实现相同目标的一种更简洁的方法,除非我遗漏了什么。