优化sed命令:删除指定JVM参数时消除多余空格
优化sed命令删除JVM参数并消除多余空格
要从hdfs.conf文件中删除-XX:+UseCMSInitiatingOccupancyOnly参数同时避免产生多余空格,可以使用以下优化后的sed命令:
sed -i -E 's/[[:space:]]*\-XX:\+UseCMSInitiatingOccupancyOnly[[:space:]]*/ /g; s/[[:space:]]+/ /g; s/^[[:space:]]+//; s/[[:space:]]+$//' hdfs.conf
命令说明:
s/[[:space:]]*\-XX:\+UseCMSInitiatingOccupancyOnly[[:space:]]*/ /g:匹配目标参数前后的任意数量空格,将参数连同前后空格替换为单个空格,避免删除参数后留下连续空格s/[[:space:]]+/ /g:将所有连续的多个空格替换为单个空格,统一处理行内的多余空格s/^[[:space:]]+//:删除行首可能存在的多余空格s/[[:space:]]+$//:删除行尾可能存在的多余空格
执行该命令后,原配置行中因删除参数产生的连续空格会被自动合并为单个空格,符合预期的格式要求。
内容的提问来源于stack exchange,提问作者Judy
相关产品推荐
相关产品推荐

