[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: BASH


Marc Haber <mh+uugrn@xxxxxxxxxxxx> wrote:

> > pfad="~/Dokumente/Computer/Sharp1403/PC.Programme/PocketTools/Lin64/"
> > $pfad/wav2bin
> > 
> > Wie macht man es richtig?
> 
> pfad="$HOME/...."
> Die Tilde funktioniert nur interaktiv.

Das hat nichts mit Interaktivitaet zu tun, sondern mit der Ersetzungs-
reihenfolge, siehe bash(1), "EXPANSION":

    The  order  of expansions is: brace expansion, tilde expansion, parame-
    ter, variable and arithmetic expansion and command  substitution (done
    in a left-to-right fashion), word splitting, and pathname expansion.

Tildeersetzung erfolgt vor Variablenersetzung. Im obigen Beispiel
wird die Variable $pfad ersetzt, die Tilde im Ergebnis danach nicht
mehr. Und durch die Anfuehrungszeichen wird die Tilde auch nicht
vorher bei der Zuweisung an pfad ersetzt.

-- 
Christian "naddy" Weisgerber                          naddy@xxxxxxxxxxxx
-- 
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/