Wie kann ich einen Bash-Alias ​​festlegen, der beim Ausführen $() auswertet?

Wie kann ich einen Bash-Alias ​​festlegen, der beim Ausführen $() auswertet?

Ich habe einen Alias ​​eingerichtet:

alias gpgagentexport="eval $(cat ~/.gpg-agent-info) ; export GPG_AGENT_INFO"

Wenn ich jedoch meine Quelle verwende, .bashrcwird $(cat ...)sie an diesem Punkt ausgewertet. Aber ich möchte sie auswerten, wenn ich den Alias ​​ausführe gpgagentexport(nachdem sich der Inhalt ~/.gpg-agent-infogeändert hat).

Gibt es also eine Art Escape-Zeichen, Anführungszeichen oder Syntax, um dies zu erreichen?

Antwort1

Verwenden Sie einfache Anführungszeichen:

alias gpgagentexport='eval $(cat ~/.gpg-agent-info) ; export GPG_AGENT_INFO'

Antwort2

Das Entkommen von $sollte auch funktionieren:

 alias gpgagentexport="eval \$(cat ~/.gpg-agent-info) ; export GPG_AGENT_INFO"

verwandte Informationen