将文字切成两个字

时间:2019-04-19 06:10:51

标签: bash shell command-line

我使用jq从JSON文件中提取值,并将值存储为字符串形式的

var=$(Jq-command)
# var now contain
# "Serge" "Haroche" "David J." "Wineland"

我想要一个脚本,将字符串每两个字分割一次,并创建新行,所以我无法获得输出

output:
Serge Haroche
David J Wineland

我是个新手,对awk / sed并不十分满意,我不能削减。

1 个答案:

答案 0 :(得分:2)

尝试此sed脚本

var='"Serge" "Haroche" "David J." "Wineland"'
echo $var|sed -n 's/"\([^"]\+\)" "\([^"]\+\)" */\1 \2\n/gp'

输出

Serge Haroche
David J. Wineland

删除最后一个\ n

echo -n $var|sed -n 's/"\([^"]\+\)" "\([^"]\+\)" */\1 \2\n/gp'