我有一个包含以下内容的文件
firsttext=cat secondtext=dog thirdtext=mouse
我希望它返回此字符串:
"firsttext=cat" "secondtext=dog" "thirdtext=mouse"
我试过这个单行,但它给了我一个错误。
cat oneline | perl -ne 'print \"$_ \" '
无法找到字符串终结符'"'' EOF之前的任何地方-e第1行。
我不明白错误。为什么它只是添加引号?
另外,如果我在这个字符串中有一个变量,我希望它插入如下:
firsttext=${animal} secondtext=${othervar} thirdtext=mouse
哪个应输出
"firsttext=cat" "secondtext=dog" "thirdtext=mouse"
答案 0 :(得分:0)
perl -lne '@f = map qq/"$_"/, split; print "@f";' oneline
答案 1 :(得分:-2)
你想要的是这个:
cat oneline | perl -ne 'print join " ", map { qq["$_"] } split'
-ne
选项仅在行上拆分,在没有设置其他选项的情况下,它不会在任意空格上拆分。