我有这个字符串
[1.1.1.1 2.2.2.2]
你能告诉我如何删除[ ]
. 我没有成功sed
我希望它最终会是这样的:
1.1.1.1
2.2.2.2
tr -d '[]'
将删除方括号:
$ tr -d '[]' <<< "[1.1.1.1 2.2.2.2]"
1.1.1.1 2.2.2.2
要拆分,您可以使用 sed 命令,例如's/ /\n/'
$ tr -d '[]' <<< "[1.1.1.1 2.2.2.2]" | sed 's/ /\n/'
1.1.1.1
2.2.2.2
像这样试试
echo [1.1.1.1 2.2.2.2] | sed 's/\[//' | sed 's/\]//'| sed 's/ /\n/'
1.1.1.1
2.2.2.2
这可能有效
echo '[1.1.1.1 2.2.2.2]' | sed -e 's/\[//' -e 's/]//' -e 's/ /\n/'
1.1.1.1
2.2.2.2
$ echo '[1.1.1.1 2.2.2.2]' | tr -d '[]'
1.1.1.1 2.2.2.2
$ for derp in $(echo '[1.1.1.1 2.2.2.2]' | tr -d '[]'); do echo $derp; done
1.1.1.1
2.2.2.2
$ echo '[1.1.1.1 2.2.2.2]' | tr -d '[]' | sed 's/\s\+/\n/g'
1.1.1.1
2.2.2.2
将其用作:
echo '[1.1.1.1 2.2.2.2]' | sed -r 's/\[|\]//g'
1.1.1.1 2.2.2.2
或使用 posix sed:
echo '[1.1.1.1 2.2.2.2]' | sed 's/[][]//g'
1.1.1.1 2.2.2.2
如果只有数字、空格和点,你也可以使用
echo '[1.1.1.1 2.2.2.2]' | sed "s/[^0-9. ]//g"
但最好的是之前由 anubhava 开发的 posix
这可能对您有用:
$ sed 's/\[\(.*\) \(.*\)\]/\1\n\2/' <<< "[1.1.1.1 2.2.2.2]"
1.1.1.1
2.2.2.2