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

Re: bash, cat, grep und Variablen



On 10/01/2018 09:05 PM, Stefan Tichy wrote:
> On Mon, Oct 01, 2018 at 07:40:16PM +0200, Helge Reimer wrote:
>> Ja, schon klar. Bin halt nicht so im Thema und hoffte auf schnelle Hilfe.
>> Magst du hier erklären wie die Ausgabe ohne die " zustande kommt?
> 
> Nach der Parameter- (Variablen-) Erweiterung tut die Shell noch
> einiges. Durch die doppelten Hochkomma wird ein Teil dieser Aktionen
> übersprungen. Einfaches Beispiel:
> 
> TXT='d*'
> cd $(mktemp -d) && touch abc def
> echo "$TXT"
> echo $TXT

Da gibt es auch noch andere Seiteneffekte:

  TXT=-e
  echo "$TXT"

Deswegen empfehle ich zum Skripten eher printf (also:

  TXT=-e
  printf '%s\n' $TXT

), da passieren weniger Überraschungen; auch weil echo sich abhängig von
der Shell anders verhält:

$ dash -c "echo -e lala"
-e lala
$ bash -c "echo -e lala"
lala

Liebe Grüße
Uwe

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: