我对linux很新。我想做命令替换。我想在bashrc中定义一个变量,并将其设置为linux命令的返回值。它的语法是什么?
这正是我想要做的。我在heroku上部署了一个Rails 4应用程序,我在Heroku上使用Sendgrid发送电子邮件。现在,当我在控制台中输入heroku config:get SENDGRID_USERNAME
(或heroku config:get SENDGRID_PASSWORD
)(在本地文件夹my_app_folder中)时,它会返回我的Sendgrid用户名(或密码)。我想在baschrc中定义变量SENDGRID_USERNAME
并将其设置为等于heroku config:get SENDGRID_USERNAME
的返回值(而不是复制粘贴实际值)。我该怎么做?如下所示:
export SENDGRID_USERNAME=my_app_folder/heroku config:get SENDGRID_USERNAME
非常感谢。
答案 0 :(得分:0)
这就是你要找的东西吗?
SENDGRID_USERNAME=$( path/to/heroku config:get SENDGRID_USERNAME )
# ^^ ^
执行时,$( ... )
将替换为括号中括起的命令的输出。引用man bash
:
Command Substitution Command substitution allows the output of a command to replace the com‐ mand name. There are two forms: $(command) or `command` Bash performs the expansion by executing command and replacing the com‐ mand substitution with the standard output of the command, with any trailing newlines deleted.