.bash_profile中的Mac OS X echo $(date)给出过时日期

时间:2013-09-22 20:18:07

标签: bash shell date alias .bash-profile

在终端中,如果我运行echo $(date),它会给我当前日期。

然而,当我把命令放在 .bash_profile 中作为别名

alias dt="echo $(date)"
它会给我陈旧的约会。也就是说,当我运行dt时,它总会给我相同的日期。

任何解决方法?谢谢!

1 个答案:

答案 0 :(得分:4)

您需要引用它以防止扩展:

alias dt="echo \$(date)"
alias dt="echo \"\$(date)\""  ## (internally quoted)

或者只使用单引号:

alias dt='echo $(date)'
alias dt='echo "$(date)"'  ## (internally quoted)

更好的是使用功能:

dt() { echo "$(date)"; }