Stap 2: Het Script
Codering is als een puzzel. Hebt u alle onderdelen - u hoeft alleen maar hen om samen te stellen. Het helpen om het teken een diagram aanbieding hoe dingen moeten gebeuren. Dan wordt het gewoon codering van de blokken. Gelukkig voor jou, de blokken zijn ingevuld en het is gewoon een kwestie van het downloaden of kopiëren/plakken (Vergeet niet om het eens lezen-machtigingen voor uitvoeren! Het zal verwijderen van hen). Maar hier zijn mijn blokken:1. vraag om een MIDI-bestand te converteren.
2. vraag waar het geconverteerde bestand wilt opslaan.
3. test als de directory schrijfbaar is.
4a. zo ja, converteert u het bestand met normale machtigingen.
4b. zo nee, vragen om gebruikerswachtwoord en vervolgens converteren met SUDO machtigingen.
Er zijn een heleboel als verklaringen in de code; drie van die tests als "Cancel" is ingedrukt. De rest is het testen als SUDO machtigingen nodig zijn.
#! / bin/bash # Haal de MIDI pad/bestandsnaam # Haal opslaan pad/bestandsnaam # Zie als huidige gebruiker schrijfmachtiging heeft door een leeg bestand te maken # Vertellen ons dat de omzetting wordt gedaan # Als niet, root-wachtwoord, krijgen opdracht uitvoeren als root # Doen de conversie en een voortgangsbalk weergeven # Vertellen ons dat de omzetting wordt gedaan
Midden = $(zenity--bestand-selectie)
Als [$? = 1];
Sluit
fi
WAV = $(zenity--bestand-selectie--opslaan--bevestigen-overschrijven)
Als [$? = 1];
Sluit
fi
> $wav
# Als dat zo is, doen de conversie en Toon voortgangsbalk
Als [$? -eq 0]; vervolgens
timidity "$mid"-Ow -o "$wav" | zenity--vooruitgang--pulseren--auto-sluiten--tekst "Omzetten..."
zenity--info--tekst "Conversie voltooid!"
anders
# Haal het gebruikers wachtwoord
passwd = $(zenity--password)
ECHO $passwd|sudo -S timidity "$mid"-Ow -o "$wav" | zenity--vooruitgang--pulseren--auto-sluiten--tekst "Omzetten..."
Als [$? = 1];
Sluit
fi
zenity--info--tekst "Conversie voltooid!"
fi