gpt4 book ai didi

bash - 试图将一个字符串拆分为两个变量

转载 作者:行者123 更新时间:2023-11-29 08:48:07 24 4
gpt4 key购买 nike

我正在尝试将一个字符串拆分为两个变量(无需使用 while 循环):

var="hello:world"
IFS=':' read var1 var2 <<< $var

echo "var1: $var1"
echo "var2: $var2"

但我没有得到想要的结果:

var1: 'hello world'
var2: ''

谁能解释一下是否可以通过这种方式(或类似方式)做到这一点?

最佳答案

这是 Bash 4.2 中的错误。参见 chepner's answer以获得正确的解释。


这是关于引号的。使用:

IFS=':' read var1 var2 <<< "$var"
^ ^

代替

IFS=':' read var1 var2 <<< $var

查看结果:

$ IFS=':' read var1 var2 <<< "$var"
$ echo "var1=$var1, var2=$var2"
var1=hello, var2=world

但是

$ IFS=':' read var1 var2 <<< $var
$ echo "var1=$var1, var2=$var2"
var1=hello world, var2=

关于bash - 试图将一个字符串拆分为两个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20144593/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com