我正在使用bash shell,现在需要一些备份搜索。
我有一行java配置输出,其中我得到了两个我需要的信息。这些输出非常长且令人困惑,所以我想用sed清理它。
所以,我试过这个:
sed -n 's/(.[a-z]*[0-9]*[a-z])/*\([^ ]* *\)/\1 \2/'
我需要的文件是Xmx,它是这样构建的:Xmx1024m
我还需要这一行的最后一句话。
示例:
was.status.socket=58963 -Dosgi.install.area.configuration.area=opt/was/example -Xms256m -Xmx1024m -Xcompressedrefs -Djavarofiles/nodeagent/properties/server.policy lastword
我需要什么:
Xmx1024 lastword
你可以帮帮我吗?
谢谢!
KevinD
答案 0 :(得分:1)
以下内容删除了Xmx之前的所有内容以及之后的所有内容:
sed 's/.*\(Xmx[^ ]*\) .* /\1 /'
答案 1 :(得分:0)
sed -r 's/.*(Xmx[0-9]+)m.* /\1 /'
示例:
sdlcb@ubuntu:~/AMD_C$ echo "was.status.socket=58963 -Dosgi.install.area.configuration.area=opt/was/example -Xms256m -Xmx1024m -Xcompressedrefs -Djavarofiles/nodeagent/properties/server.policy lastword" | sed -r 's/.*(Xmx[0-9]+)m.* /\1 /'
Xmx1024 lastword