Aquí hay un ejemplo que autossh
, registrado como un servicio launchd.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>swinton.autossh</string>
<key>KeepAlive</key>
<dict>
<key>NetworkState</key>
<true/>
</dict>
<key>RunAtLoad</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/autossh</string>
<string>-M</string>
<string>20000</string>
<string>-D</string>
<string>9999</string>
<string>steve@212.48.81.37</string>
<string>-N</string>
</array>
<key>StandardOutPath</key>
<string>/Users/steve/Logs/autossh/autossh.stdout</string>
<key>StandardErrorPath</key>
<string>/Users/steve/Logs/autossh/autossh.stderr</string>
<key>User</key>
<string>steve</string>
<key>ThrottleInterval</key>
<integer>30</integer>
</dict>
</plist>
Puede encontrar alguna documentación de lanzamiento aquí: https://www.launchd.info/