San*_*San 4 linux shell scripting awk awk-formatting
我正在尝试使用awk命令将值拆分为三个部分.需要帮助打破3.
内容= 1. 11683 (<server01>: du.size[/,free] : 0.5 % 2. 21683 (<server02>: du.size[/,free] : 1.5 % 3. 31683 (<server03>: du.size[/,free] : 3.5 %
我希望上面的内容在编号系统中分成3行.
需要样品输出:
1. 11683 (<server01>: du.size[/,free] : 0.5 %
2. 21683 (<server02>: du.size[/,free] : 1.5 %
3. 31683 (<server03>: du.size[/,free] : 3.5 %
Run Code Online (Sandbox Code Playgroud)
我尝试过以下命令:
echo $content | awk -F"3. " '{ print $2 }'
Run Code Online (Sandbox Code Playgroud)
我明白了
31683 (<server03>: du.size[/,free] : 3.5 %
Run Code Online (Sandbox Code Playgroud)
与其他人类似,但仍未能以正确的编号格式获得样本输出,如上所示.
谁可以帮我这个事 ?
这个%符号看起来像是一个很好的候选人.尝试:
sed 's/% /%\n/g'
Run Code Online (Sandbox Code Playgroud)
测试:
echo "1. 11683 (<server01>: du.size[/,free] : 0.5 % 2. 21683 (<server02>: du.size[/,free] : 1.5 % 3. 31683 (<server03>: du.size[/,free] : 3.5 %" | sed 's/% /%\n/g'
Run Code Online (Sandbox Code Playgroud)
结果:
1. 11683 (<server01>: du.size[/,free] : 0.5 %
2. 21683 (<server02>: du.size[/,free] : 1.5 %
3. 31683 (<server03>: du.size[/,free] : 3.5 %
Run Code Online (Sandbox Code Playgroud)