Вот ответ после многих часов попыток понять его. По крайней мере, это работает для nadekobot
. Скопируйте этот текст в системную папку systemd
как файл nedekobot.service
, затем не забудьте включить служебный файл.
[Unit]
Description=Nadekobot
[Service]
WorkingDirectory=/root/
User=root
Type=forking
ExecStart=/usr/bin/tmux new-session -s mc-%i -d '/bin/sh nadeko_start.sh'
ExecStop=/bin/sleep 2
[Install]
WantedBy=multi-user.target
Предполагая, что ваш sed
поддерживает флаг -i
для редактирования места в -(, большинство из тех, с которыми вы, вероятно, столкнетесь в основной операционной системе, поддерживают ), вы можете сделать:
find. -type f -name Info.plist -exec sed -i 's/Shared/Fireball/g' {} +
Если нет, вы можете попробовать perl
вместо:
find. -type f -name Info.plist -exec perl -i -pe 's/Shared/Fireball/g' {} +
Просто убедитесь, что каждый экземпляр строки Shared
является тем, который вы хотите заменить. Может быть безопаснее использовать немного больше пути, просто чтобы быть в безопасности:
find. -type f -name Info.plist -exec sed -i 's|/Users/Shared/Library/|/Users/Fireball/Library|g' {} +
команда
find. -type f -iname Info.plist -exec sed "/<string>\/Users\/Shared\/Library\/Mail/s/Shared/Fireball/g" {} \; 2>/dev/null
выход
<string>/Users/Fireball/Library/Mail/V7/74398/Junk.mbox</string>
<string>/Users/Fireball/Library/Mail/V7/7-67B8/Sent.mbox</string>
<string>/Users/Fireball/Library/Mail/V7/OLD/Old.mbox</stri