I'd like to override one setting for a master service in conf.d/10-master.conf. Unfortunately, said setting contains spaces, and I do not know how to escape them properly.
Here's what I've tried so far. (Note: This is just the easiest/silliest test case I could come up with; not the actual setting or service I want to overwrite.)
conf.d/10-master.conf: service quota-status { executable = quota-status -p postfix -o plugin/quota_status_success=Testing 1 2 3 inet_listener { port = 12340 } }
Reaction: $ printf "recipient=test@example.org\nsize=0\n\n" | nc 127.0.0.1 12340 action=Testing
conf.d/10-master.conf: service quota-status { executable = quota-status -p postfix -o "plugin/quota_status_success=Testing 1 2 3" inet_listener { port = 12340 } }
Reaction: $ printf "recipient=test@example.org\nsize=0\n\n" | nc 127.0.0.1 12340 action=DUNNO [<-- This is the default setting]
conf.d/10-master.conf: service quota-status { executable = quota-status -p postfix -o 'plugin/quota_status_success=Testing 1 2 3' inet_listener { port = 12340 } }
Reaction: $ printf "recipient=test@example.org\nsize=0\n\n" | nc 127.0.0.1 12340 action=DUNNO [<-- This is the default setting]
conf.d/10-master.conf: service quota-status { executable = quota-status -p postfix -o plugin/quota_status_success="Testing 1 2 3" inet_listener { port = 12340 } }
Reaction: $ printf "recipient=test@example.org\nsize=0\n\n" | nc 127.0.0.1 12340 action="Testing [<-- Note the " after = ]
conf.d/10-master.conf: service quota-status { executable = quota-status -p postfix -o plugin/quota_status_success=Testing\ 1\ 2\ 3 inet_listener { port = 12340 } }
Reaction: $ printf "recipient=test@example.org\nsize=0\n\n" | nc 127.0.0.1 12340 action=Testing\ [<-- Note the \ ]
I'm out of ideas now. What's the correct way to quote / escape these options?