将命令替换为/ etc / environment中的输出

时间:2015-08-26 11:10:17

标签: linux shell environment-variables

我的脚本为

   S3_AWS_SECRET_ACCESS_KEY=\`cat /tmp/decrypted | cut -d= -f2 | cut -d, -f1\`
   S3_AWS_ACCESS_KEY_ID=\`cat /tmp/decrypted | cut -d= -f3\`

每当我做的时候我都想要

   source /etc/environment

`和`之间的命令被执行并被输出替换 以便生成的/ etc / environment看起来像这样

   S3_AWS_SECRET_ACCESS_KEY=SOMEKEY
   S3_AWS_ACCESS_KEY_ID=SOMEID

1 个答案:

答案 0 :(得分:0)

那不是/etc/environment的工作方式。它没有被评估,当然也没有被任意的shell评估。

您可以执行您想要的操作,但您需要使用shell启动脚本(并且不会应用于非shell进程)。

但请注意,除非/tmp/decrypted是一个短命的文件,否则这实际上并不具有远程意义"安全性" (即使是这样,我也不知道它是如何用于这种用法的,它仍然没有真正具有远程意义的安全"措施)。