首页 > 解决方案 > 我可以在哪里存储当前 Unix 用户的变量和值,以便我可以在 SSH 和脚本中使用它们?

问题描述

我有一些变量我经常使用来配置和调整我的 Ubuntu LAMP 服务器堆栈,但是我厌倦了必须将导出命令复制并粘贴到我的 SSH 窗口中来注册变量及其值。

本质上,我想将变量及其值保存在用户配置文件主目录内的文件中,这样当我在 SSH 窗口中键入命令或执行 bash 脚本时,可以轻松使用变量。我不想设置任何系统范围的变量,因为其中一些变量用于设置密码等。

最简单的方法是什么?

更新 1

所以基本上我可以将变量和值存储在一个文件中,然后每次我登录到一个 SSH 会话时,我都会调用这个文件来设置变量?

cat <<"EOF" >> ~/my_variables
export foo='bar'
export hello="world"
EOF
ssh root@example.com 
$ source ~/my_variables
$ echo "$foo"
$ bar

然后从我放置source ~/my_variables在脚本顶部的脚本中调用变量?

#!/bin/bash
source ~/my_variables
echo "$hello"

标签: bashvariablesunixscripting

解决方案


只需将您的export命令添加到文件中,然后在您的 SSH 会话中运行source <the-file>(或. <the-file>对于非 bash shell)。


推荐阅读