私はこの文字列を持っています
[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 -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
これはあなたのために働くかもしれません:
$ sed 's/\[\(.*\) \(.*\)\]/\1\n\2/' <<< "[1.1.1.1 2.2.2.2]"
1.1.1.1
2.2.2.2
数字、スペース、ドットしかない場合も使用できます
echo '[1.1.1.1 2.2.2.2]' | sed "s/[^0-9. ]//g"
しかし、最高のものは直前にanubhavaによるposixのものです