我导出环境变量,将env >> /etc/environment
它们暴露给我的 cron 作业。
然而,我的环境变量之一(密码)包含井号#
......
果然,当cron作业执行时,后面的一切#
都消失了!
我该如何避免这种情况?
重现
请注意,将env >> /etc/environment
环境写入这个全局可访问的文件中 - 我不在乎,因为我在 Docker 容器中运行,但你可能会。
export cron_test=123#456
# This will show 123#456
echo $cron_test
# Take care with the line below
env >> /etc/environment
crontab -e
# and start cron if it is not running
当 crontab 提示时:
*/1 * * * * echo $cron_test > /tmp/cron.env
一分钟后将cat /tmp/cron.env
只显示123
而不是123#456
。
任何解决方法都非常感激。