Как задать псевдоним bash, который вычисляет $() при запуске?

Как задать псевдоним bash, который вычисляет $() при запуске?

Я создал псевдоним:

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

Однако когда я получаю мой источник, .bashrcон $(cat ...)оценивается в этой точке. Но я хочу оценить его, когда я запускаю псевдоним gpgagentexport(после того, как содержимое ~/.gpg-agent-infoизменилось).

Так есть ли какой-то способ экранирования, кавычек или синтаксиса, чтобы этого добиться?

решение1

Используйте одинарные кавычки:

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

решение2

Экранирование $также должно работать:

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

Связанный контент