我有一台通过 SSH 登录的远程(Debian 8)机器。在我的每个 ssh 会话中,我需要初始化一个变量“XDEBUG_CONFIG”,以便稍后我可以在同一会话中使用调试工具。
这是我必须在每次会话中输入的内容:
export XDEBUG_CONFIG="remote_enable=1 remote_mode=req remote_port=9000 remote_host=10.0.2.2 remote_connect_back=0"
然后,我在同一会话中启动的其他程序将使用该变量。
我想少打字(或者根本避免打字,这样当我登录时就会自动设置变量 XDEBUG_CONFIG)。每次的值都是相同的。
我尝试将命令放入 ~/.ssh/rc 但没有帮助。当我再次登录时
echo $XDEBUG_CONFIG
它显示一个空行。到目前为止,我已经在 ~/.bashrc 中创建了别名,如下所示
alias helpdebug='echo "export XDEBUG_CONFIG=\"remote_enable=1 remote_mode=req remote_port=9000 remote_host=10.0.2.2 remote_connect_back=0\""'
并尝试在反引号中运行它:
`helpdebug`
但这会导致变量“XDEBUG_CONFIG”仅设置为“remote_enable=1”(即直到第一个空格)。
答案1
把这个放在你的~/.bashrc
:
if [ -n "$SSH_CONNECTION" ]; then
export XDEBUG_CONFIG="remote_enable=1 remote_mode=req remote_port=9000 remote_host=10.0.2.2 remote_connect_back=0"
fi