Unix中以ksh解析管道分隔格式的字符串 [英] Unix parsing pipe delimited format string in ksh
本文介绍了Unix中以ksh解析管道分隔格式的字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在编写ksh脚本来解析管道分隔的字符串
I am writing ksh script to parse a pipe delimited string
export dummy="abc"
echo "123|456|789" | awk '{split($0,output,"|"); print output[3] output[2] output[1]}'
上面的代码似乎可以正常工作,但是我无法将输出[3]的值分配给虚拟对象.
above code seems to work , but I am not able to assign value of output[3] to dummy.
是否可以进行这种解析,但是我想将解析结果分配给ksh空间中的一个变量,即dummy(在上面的示例中)?
Is there a way to do such parsing, but I want to assign the parsing result in a variable within ksh space i.e. dummy (in above sample)?
推荐答案
shell可以做到:
The shell can do it:
line="123|456|789"
IFS='|' read a b c <<END
$line
END
echo $c # => 789
这篇关于Unix中以ksh解析管道分隔格式的字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文