У меня есть длинная командная строка, которую нужно вставить в запись ExecStart systemd. Я понимаю, что могу разбить длинную строку на несколько, завершив каждую незавершенную строку обратной косой чертой.
Однако как я могу задокументировать детали с комментариями? Например. следующее не сработает:
ExecStart=/bin/ssh -NT -o ExitOnForwardFailure=yes -o ServerAliveInterval=60 -o ServerAliveCountMax=3 \
# local tunnel for this
-L 172.16.12.34:10001:localhost:10001 \
# remote tunnel for that
-R3128:127.0.0.1:3128 \
someserver
Если я удалю строки с символом «#», он будет работать, но тогда я потеряю документацию. Если детальная документация на месте частей длинной командной строки принципиально невозможна, каковы некоторые полезные альтернативы?
Я думаю, это то, что предлагает @sven:
#
# Listen locally on port 10001 and tunnel it to someserver
# Listen on someserver port 3128 and tunnel it to localhost
#
ExecStart=/bin/ssh -NT \
-o ExitOnForwardFailure=yes \
-o ServerAliveInterval=60 \
-o ServerAliveCountMax=3 \
-L 172.16.12.34:10001:localhost:10001 \
-R3128:127.0.0.1:3128 \
someserver
Для меня это не так уж плохо.