首页 > 解决方案 > 在 bash 中解析 conf 文件

问题描述

这是我的配置文件

#comment 1
--longoption1

#comment 2
--longoption2

#comment 3
-s   

#comment 4
--longoption4

我想编写一个 bash 脚本来读取这个 .conf 文件,跳过注释并像这样序列化命令行选项。

./binary --longoption1 --longoption2 -s --longoption4

标签: linuxbashawksedgrep

解决方案


从 sed 上的这篇文章开始,您只需要将 sed 的输出通过管道传输到 xargs:

sed -e 's/#.*$//' -e '/^$/d' inputFile | xargs ./binary

正如 Wiimm 指出的那样,xargs 可能对很多参数都很挑剔,它可能会将其拆分为对binary. 直接使用 sed 可能会更好:

./binary $(sed -e 's/#.*$//' -e '/^$/d' inputFile)

推荐阅读