2016-05-09 7 views
2

Kann mir jemand sagen, warum der folgende:Drei Sterne in der Echo-Ausgabe, die die Auflistung einfügt?

#!/bin/bash 
TEST=$(echo '*** this is a test ***') 
echo $TEST 

... gibt eine Auflistung des aktuellen Verzeichnisses, dann „Dies ist ein Test“, dann noch einer Auflistung des aktuellen Verzeichnisses?

Hintergrund: Ich habe einige Ausgaben, die ich in eine Variable einfügen, und dann möchte ich mehrere verschiedene Greps auf den Inhalt dieser Variablen, aber das Echo fügt all diese zusätzlichen Sachen, die nicht da sein sollte .

Dies ist unter OS X 10.11.4.

Antwort

2

Globbing in Aktion! * expandiert im zweiten Echo. Sie müssen es doppelt angeben, um eine Erweiterung zu verhindern.

echo "$TEST" 

siehe this für eine ähnliche Antwort

+0

das funktioniert, danke! –