Приветствую, светлые головы. Встала задача написать скрипт, который будет запускать обновление программы ГАРАНТ. Сам ГАРАНТ крутится на Play On Linux.
#!/bin/bash
del_zips(){
echo Delta deleting...
rm -rf /home/admins/.PlayOnLinux/wineprefix/Garant/drive_c/Program\ Files/Garant-Server/delta/*
}
del_zips
wait
start_download_tool(){
echo Downloading update. Please wait.....
/usr/share/playonlinux/playonlinux --run "download" %F -auto -dsc 90 -nofinalmessage
echo done
}
start_download_tool
wait
update_tool(){
echo Updating Garant...
/usr/share/playonlinux/playonlinux --run "dataupd" %F -auto -nobackup -nofinalmessage
}
download_delta(){
if pgrep "F1Download.run" > /dev/null
then download_delta
else update_tool
fi
}
download_delta
wait
exit 0
[/cut]
Итак, что я пытаюсь здесь делать... Удаляю уже скачанные обновления. Запускаю программу загрузки обновления с ключами самой программы. Затем после окончания работы download, запускаю функцию с условием. Если процесс с именем "F1Download.run" существует, тогда проверять снова и снова, пока не произойдет его завершение и после этого запускаем утилиту dataupd.
Проблема в том, что программа запускается и тут же закрывается и процесс самоуничтожается.
[cut=Вот выхлоп консоли]
admins@garant:~$ ./garant.sh
Delta deleting...
Done!
Downloading update. Please wait.....
Looking for python... 2.7.15+ - wxversion(s): 3.0-gtk3
selected
[main] Message: PlayOnLinux (4.2.12) is starting
[clean_tmp] Message: Cleaning temp directory
Script started /home/admins/.PlayOnLinux/shortcuts/download
[POL_System_CheckFS] Message: Checking filesystem for download.exe
[POL_Wine] Message: Running wine- download.exe %F -auto -dsc 90 -nofinalmessage (Working directory : /home/admins/.PlayOnLinux/wineprefix/Garant/drive_c/Program Files/Garant-Server)
[POL_Wine] Message: Notice: PlayOnLinux deliberately disables winemenubuilder. See http://www.playonlinux.com/fr/page-26-Winemenubuilder.html
[POL_Wine] Message: Wine return: 0
done
Updating Garant...
Looking for python... 2.7.15+ - wxversion(s): 3.0-gtk3
selected
[main] Message: PlayOnLinux (4.2.12) is starting
[clean_tmp] Message: Cleaning temp directory
Script started /home/admins/.PlayOnLinux/shortcuts/dataupd
[POL_System_CheckFS] Message: Checking filesystem for dataupd.exe
[POL_Wine] Message: Running wine- dataupd.exe %F -auto -nobackup -nofinalmessage (Working directory : /home/admins/.PlayOnLinux/wineprefix/Garant/drive_c/Program Files/Garant-Server)
[POL_Wine] Message: Notice: PlayOnLinux deliberately disables winemenubuilder. See http://www.playonlinux.com/fr/page-26-Winemenubuilder.html
[POL_Wine] Message: Wine return: 0
Updating Garant...
Looking for python... 2.7.15+ - wxversion(s): 3.0-gtk3
selected
[main] Message: PlayOnLinux (4.2.12) is starting
[clean_tmp] Message: Cleaning temp directory
Script started /home/admins/.PlayOnLinux/shortcuts/dataupd
[POL_System_CheckFS] Message: Checking filesystem for dataupd.exe
[POL_Wine] Message: Running wine- dataupd.exe %F -auto -nobackup -nofinalmessage (Working directory : /home/admins/.PlayOnLinux/wineprefix/Garant/drive_c/Program Files/Garant-Server)
[POL_Wine] Message: Notice: PlayOnLinux deliberately disables winemenubuilder. See http://www.playonlinux.com/fr/page-26-Winemenubuilder.html
[POL_Wine] Message: Wine return: 0
admins@garant:~$
[/cut]
Не могу понять, что не так. Почему происходит вылет. Пробовал запускать из консоли только одну утилиту - вылет. С ярлыка - работает.