Argumente an Alias weitergeben


Den meisten Leuten dürfte  bekannt sein, dass man einer Aliasfunktion Argumente übergeben kann. Mir war es neu / ich war noch nie auf die Idee gekommen sowas zu tun :). Ein Beispielaufruf:

create_audiobook ()
{
mpg123 -s $1 | faac -P -X -w -o $2 –
}
create_audiobook (){
mpg123 -s $1 | faac -P -X -w -o $2 -
}

$1 & $2 wären die Variablen, die gesetzt sein sollten für den Aufruf. Problematisch wirds, wenn nur ein oder gar kein Argument mitgegeben wird. Das kann man mit einer simplen If Abfrage validieren:

create_audiobook (){
expr1=$2
expr2=$1
if [ "$expr1" -a "$expr2" ]
then
	mpg123 -s $1 | faac -P -X -w -o $2 -
else
	echo "Usage: create_audiobook INPUTFILE OUTPUTFILE"
fi
}

Das Fleißsternchen bekommt man, wenn man die Existenz der Befehle vor der Ausführung abprüft:

create_audiobook (){
APP1=mpg123
APP2=faac

if which $APP1 &>/dev/null && which $APP2 &>/dev/null
then
	echo "$APP1 & $APP2 found"
else
	echo "Please install $APP1 & $APP2"
	exit
fi

expr1=$2
expr2=$1
if [ "$expr1" -a "$expr2" ]
then
	mpg123 -s $1 | faac -P -X -w -o $2 -
else
	echo "usage: create_audiobook INPUTFILE OUTPUTFILE"
fi
}
######create_audiobook konvertiert ein mp3 zu einer mp4 Datei

Mich würde an dieser Stelle noch interessieren, ob Ihr im Community Planeten an solchen Posts interessiert seid, oder ob ich solche Ergüsse für mich behalten sollte^^.

Advertisements
Dieser Beitrag wurde unter bash, schlaue tipps für dein Leben abgelegt und mit , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

4 Antworten zu Argumente an Alias weitergeben

  1. Paradiesstaub schreibt:

    Wenns nach mir geht… schreib weiter 🙂

  2. Jan schreibt:

    definitiv interessiert!

  3. deifl schreibt:

    Bitte solche Erguesse nicht fuer dich behalten.

  4. admin schreibt:

    Hey deifl super argumentiert. Thx:)

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s