我有像
这样的字符串something0^^^something1^^^something2^^^something3
我只想要字符串
something0^^^something1^^^something2
删除
^^^something3
我如何在shell脚本中获取它
答案 0 :(得分:3)
使用纯BASH:
s='something0^^^something1^^^something2^^^something3'
echo "${s/^^^something3/}"
something0^^^something1^^^something2
或者你可以删除最后^^^
之后的所有内容:
echo "${s%^^^*}"
something0^^^something1^^^something2
答案 1 :(得分:0)
perl -pe 's/\^\^\^something3//g' your_file
答案 2 :(得分:0)
awk
版本
awk -F, '{gsub(/\^\^\^/,",");NF-=1}1' OFS="^^^"
something0^^^something1^^^something2
通过将FS
更改为其他
另一个版本
awk '{sub(/\^\^\^[^\^]*$/,x)}1' file
something0^^^something1^^^something2