且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

尝试将字符串拆分为两个变量

更新时间:2023-01-19 21:32:44

这是 Bash 4.2 中的一个错误.请参阅chepner 的回答以获得正确的解释.

这是关于引号的.使用:

This is a bug in Bash 4.2. See chepner's answer for a proper explanation.


It is about quotes. Use:

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=