Это образец
zypper --non-interactive --quiet addrepo --refresh -p 90 http://packman.inode.at/suse/openSUSE_Leap_15.0/ 'packman'
zypper --gpg-auto-import-keys refresh
zypper --non-interactive dist-upgrade --allow-vendor-change --from packman
zypper --non-interactive install vlc vlc-codecs
Конечно, вы можете включить больше параметров, таких как --auto-agree-with-licenses
, но помните, что это имеет значение, до или послеinstall
Вы можете заставить BAR выводить свой PID в файл; затем проверьте, пока процесс с этим PID больше не будет запущен. Что-то вроде этого:
на БАР.ш:
#!/bin/bash
(echo $$)>/tmp/BAR.pid
...
на runFOO.sh:
#!/bin/bash
# possibly remove pid from previous run:
if [ -f /tmp/BAR.pid ]; then
rm /tmp/BAR.pid
fi
# launch FOO
./FOO.sh &
# make sure BAR has started:
while [ ! -f /tmp/BAR.pid ]; do
sleep 1
done
# wait for BAR to finnish:
while [ $(kill -s 0 $( cat /tmp/BAR.pid ) 2>&1 | wc -l) -eq 0 ]; do
sleep 1;
done