Bash file

Mjukstarta här!
Kategoriregler
Läs följande innan du postar: http://ubuntu-se.org/phpBB3/viewtopic.php?f=208&t=44692
Du får hjälp att komma igång med Ubuntu genom att välja en personlig fadder här: http://ubuntu-se.org/phpBB3/viewtopic.php?f=110&t=8767
johnny_samuelsson@msn.com
Inlägg: 83
Blev medlem: 23 aug 2007, 14:24
OS: Ubuntu
Ort: Dammkärret / Sverige
Kontakt:

Bash file

Inlägg av johnny_samuelsson@msn.com »

hej!

Jag blockade lite kod från internet. skrev lite själv, det ser bra ut men jag förstår inte varför jag får unexpected EOF while looking for matching `"'
???
det har något med raden "vm=${test[$i]}"" att göra




#!/bin/bash
#Johnnys lilla loop
test[0]="bc32-526a-46f0-b22c-3a8a9bf0"
test[1]="7980241-9a08-499b-923d-c556e751"
test[2]="73e1f98e-af54-4bc5-8f0a-77ee36"
test[3]="4ca028-4d4a-4866-9a67-dce0b6e"
for ((i=0;i<=2;i++)); do
vm=${test[$i]}"


# how long in seconds we will wait for gracefull shutdown before force poweroff
timeout=20

#logger "$0 running with [$*]..."

start() {
# we place EXEC for hack. We need to hide VBoxHeadless PID from systemd. In the other case, in the stop() we must wait until VBoxHeadless exit, but we do not need it.
exec VBoxHeadless --startvm "$vm" 2>&1 | logger &
exit $?
}

stop() {
echo -n "Try to stop VM..."
vboxmanage controlvm "$vm" acpipowerbutton
#vboxmanage controlvm "$vm" savestate
# next, we need to wait until VM is stopped
for i in `seq 1 $timeout`;
do
if ! VBoxManage list runningvms | grep $vm >/dev/null; then
echo "done!"
#sleep 1
exit 0
fi
echo -n .
sleep 1;
done
echo "save state failed. Forced poweroff."
vboxmanage controlvm "$vm" poweroff
sleep 1
exit 0
}

status() {
echo "Running machines:"
vboxmanage list runningvms
}

case $1 in
start|stop|status) "$1"
;;
*) echo "Usage: $0 [sart|stop|status]"
exit 1
;;
esac

Done



Referens: https://ubuntuforums.org/showthread.php?t=2387221
Användarvisningsbild
plemil
Inlägg: 62
Blev medlem: 11 jul 2013, 08:53
OS: Debian
Ort: Värnamo

Re: Bash file

Inlägg av plemil »

Kod: Markera allt

vm=${test[$i]}"
Tror du ska ta bort "fnutten" på slutet
Användarvisningsbild
johanre
Serveradmin
Inlägg: 3888
Blev medlem: 22 okt 2006, 09:13
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Malmö

Re: Bash file

Inlägg av johanre »

plemil skrev:

Kod: Markera allt

vm=${test[$i]}"
Tror du ska ta bort "fnutten" på slutet
Ja, absolut! Men loopen har egentligen inget med resten av scriptet att göra. Så frågan är, försöker du bara lära dig eller är scriptet avsett för att faktiskt stänga ner lokala vbox enheter?

Sent from my MI 6 using Tapatalk
johnny_samuelsson@msn.com
Inlägg: 83
Blev medlem: 23 aug 2007, 14:24
OS: Ubuntu
Ort: Dammkärret / Sverige
Kontakt:

Re: Bash file

Inlägg av johnny_samuelsson@msn.com »

Hej!

Jag försöker få vbox att starta och alla fyra gästsystem efter omstart av servern. :)
Användarvisningsbild
johanre
Serveradmin
Inlägg: 3888
Blev medlem: 22 okt 2006, 09:13
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Malmö

Re: Bash file

Inlägg av johanre »

Ok. Har du tagit bort den felaktiga fnutten?

Sent from my MI 6 using Tapatalk
johnny_samuelsson@msn.com
Inlägg: 83
Blev medlem: 23 aug 2007, 14:24
OS: Ubuntu
Ort: Dammkärret / Sverige
Kontakt:

Re: Bash file

Inlägg av johnny_samuelsson@msn.com »

Ja den är borta. men jag har inte kontroll ännu på scriptet. Jag kanske behöver tänka om, för jag får det inte att rulla.
Användarvisningsbild
johanre
Serveradmin
Inlägg: 3888
Blev medlem: 22 okt 2006, 09:13
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Malmö

Re: Bash file

Inlägg av johanre »

Kör :

sh -x /sokvag/till/scriptet start

så kan du se var i scriptet det går snett.

Sent from my MI 6 using Tapatalk
Skriv svar

Återgå till "För nybörjaren"