Ich habe das folgende Skript:Bash ruft zwei Bash-Skripte
#!/bin/bash
if [ "$EUID" -ne 0 ]
then
echo ''
echo 'Please run the script as root'
echo ''
exit
fi
for run in {1..11}
do
sudo ./start_ap.sh
sleep 10
sudo ./tst.sh
done
Das Problem ist, dass
sudo ./start_ap.sh
die nächsten Zeilen werden nicht ausgeführt werden, nachdem die Ausführung, da die Leitung sudo ./start_ap. sh braucht STRG + C um zu stoppen und erst dann werden die nächsten Zeilen ausgeführt.
Allerdings möchte ich, dass das sudo ./start_ap.sh nach sudo ./tst.sh beendet wird und im nächsten Schritt wird dies 11 mal wiederholt.
Bis jetzt werden die nächsten Zeilen nach der Ausführung von sudo ./start_ap.sh nicht ausgeführt, ohne den Prozess zu beenden.
Wie kann ich es realisieren?
P.S. start_ap.sh startet hostapd und muss daher für die nächsten Ausführungen getötet werden.
Ich habe nichts verstanden, was Sie fragen. Vielleicht können Sie als erstes versuchen, C-c 'start_ap.sh' nicht zu brauchen? – zmo
Wenn Sie das Skript als root ausführen müssen, warum später 'sudo' ausführen? – chepner