Was sind die Typen von ~, ~-, ~+, *?

Was sind die Typen von ~, ~-, ~+, *?

Wenn ich richtig liege, pwdist ein Befehl, PWDist eine Variable (Name) und -in cd -ist ein Operand.

Welche Typen von ~, ~-, ~+, *meinen sie $HOME, das zuvor besuchte Verzeichnis, das aktuelle Verzeichnis und die Dateien im aktuellen Verzeichnis? (aus der Sicht der Programmiersprachen)

Sind das Variablennamen? Wenn ja, warum echo $~funktioniert es nicht?

Warum *funktioniert in:

for i in *; do ls "$i"; done

Antwort1

*ist ein Metazeichen (oder Platzhalter), alle anderen sind tilde-prefixBeispiele ( ~ist Standard ~+und ~-sind Erweiterungen).

Es handelt sich bei keinem von ihnen um Variablen, daher ist es sinnlos, ihnen ein Präfix voranzustellen $.

echo $~funktioniert einwandfrei, es wird angezeigt $~. Es gibt keine Erweiterung, da ~nicht als Präfix verwendet wird.

for i in *; ...funktioniert wie vorgesehen.

verwandte Informationen