无法将 $(date +%F) 设置为环境变量

Mar*_*nna 6 bash environment-variables

我想创建一个环境变量来输出当前日期。我已将以下内容添加到 ~/.pam_environment:

TODAY=$(date +%F)
Run Code Online (Sandbox Code Playgroud)

显然,您必须在更改 ~/.pam_environment 后注销。我这样做了,但是

echo $TODAY
Run Code Online (Sandbox Code Playgroud)

输出一个空行。

我究竟做错了什么?

Gun*_*son 5

~/.pam_environment不是脚本文件。改用~/.profile

export TODAY=$(date +%F)
Run Code Online (Sandbox Code Playgroud)


Sco*_*ame 2

您忘记了“引号”,这是一个有关更多示例的酷链接

TODAY= date +"%F"
Run Code Online (Sandbox Code Playgroud)

  • @ScottGoodgame 这不是问题。通常不需要引用“%”,尽管您提供的参考文献遵循这种风格,但实际上并不意味着必须这样做。尝试该页面中的一些不带引号的示例(例如“date +%m-%d-%y”)。效果很好。此外,`TODAY= date +"%F"` 实际上运行 `date +"%F"` 并将 `TODAY` 设置为其环境中的空字符串。 (2认同)

小智 0

$ export DATE=`date +"%F"`
$ echo $DATE
2014-05-30
Run Code Online (Sandbox Code Playgroud)