Üdv!
Adott egy program, amit wine alatt futtatok. Ehhez a programhoz két CD képet kell felcsatolnom. Megpróbáltam létrehozni egy sriptet, ami ezt megoldja helyettem, de sehogy nem sikerül, csak 2 külön script és egy parancs kiadásával tudtam eddig megoldani.
Ezek így néznek ki:
felcsatol:
#!/bin/bash
sudo mount -o loop /home/freyr/mappa/cd1.iso /home/freyr/mappa/CD1
sudo mount -o loop /home/freyr/mappa/cd2.iso /home/freyr/mappa/CD2
majd indítom a programot, utána a lecsatol script:
#!/bin/bash
sudo umount /home/freyr/mappa/CD1
sudo umount /home/freyr/mappa/CD2
Ha mindegyiket terminálból futtatom, működik, azonban azt akartam elérni, hogy egyetlen scripttel tudjam mindhárom műveletet elvégezni. Ez lett az eredmény:
#!/bin/bash
gnome-terminal -e sudo mount -o loop /home/freyr/mappa/cd1.iso /home/freyr/mappa/CD1
gnome-terminal -e sudo mount -o loop /home/freyr/mappa/cd2.iso /home/freyr/mappa/CD2
wine /home/freyr/.wine/drive_c/Program\ Files/...
gnome-terminal -e sudo umount /home/freyr/mappa/CD1
gnome-terminal -e sudo umount /home/freyr/mappa/CD2
Azonban egyáltalán nem működik, de nem értem miért. Se a felcsatolást, se a lecsatolást nem végzi el, csak a programot indítja. A program bezárása után felvillan ugyan két terminál ablak, de kipróbáltam, hogy felcsatolom a két képet, majd lefuttattam a scriptet, de nem működik a lecsatolás se.
Érdekes még, ha terminálból kiadom mondjuk a sudo mount -o loop /home/freyr/mappa/cd1.iso /home/freyr/mappa/CD1 parancsot, működik, de ha a gnome-terminal -e sudo mount -o loop /home/freyr/mappa/cd1.iso /home/freyr/mappa/CD1 parancsot adom ki, megjelenik ugyan egy pillanatra egy új terminál, de nem csinál semmit.
Nem volt még időm beleásni magam a bash-be, de úgy vélem működnie kellene. Hasonló scriptet használok a VirtualBox indítására, mivel le kell állítani a kvm-et előtte, és gyorsabb volt, mint keresni egy végleges megoldást. Az a parancs így néz ki: gnome-terminal -e sudo /etc/init.d/kvm stop && VirtualBox. Ez gond nélkül működik, pedig ugyan ezt a logikát használja. Megjegyzem megpróbáltam &&-vel helyettesíteni az új sorokat, de akkor el sem indult a program.
Erre várnék ötleteket, előre is Köszönöm!