BASH:OSX中的$(date)导致“非法变量名称”

时间:2017-03-23 09:19:49

标签: bash macos variables

在我的一个bash脚本中,我正在使用$(date)变量,这似乎在LINUX环境中正常工作。但是,当我尝试在OSX上使用脚本时,我会收到错误:

echo $(date)
--> Illegal variable name.

最后,我想以同样的方式在两个环境中调用日期函数:

testvar=$(date +%s.%N)

您对OSX的解决方法有什么想法吗?也许一个自定义函数可以在两个环境中工作?

提前致谢!

1 个答案:

答案 0 :(得分:1)

听起来像是在使用(C Shell)或

# ps
   PID TTY          TIME CMD
 37950 pts/51   00:00:00 csh
 37951 pts/51   00:00:00 ps
# echo $(date)
Illegal variable name.
# echo `date`
Thu Mar 23 17:30:02 CST 2017
# set date=`date`
# echo $date
Thu Mar 23 17:31:43 CST 2017
#

使用bash

# bash
bash-4.4# echo $(date)
Thu Mar 23 17:28:19 CST 2017
bash-4.4#