bash - ssh user@pc 'source ~/.bashrc;printenv' 不来源 bashrc?
问题描述
通过 ssh 传递命令,但由于采购问题而找不到路径。源后没有变化。有些机器工作正常。
ssh user@pc 'source ~/.bashrc;printenv'
SSH_CONNECTION=192.168.5.249 59060 192.168.5.248 22
LANG=en_IN
XDG_SESSION_ID=57
USER=hadoop
PWD=/home/hadoop
HOME=/home/hadoop
SSH_CLIENT=192.168.5.249 59060 22
MAIL=/var/mail/hadoop
SHELL=/bin/bash
SHLVL=1
LANGUAGE=en_IN:en
LOGNAME=hadoop
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1001/bus
XDG_RUNTIME_DIR=/run/user/1001
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
_=/usr/bin/printenv
用户主页中的 .bashrc 未加载,即使它已通过。
解决方案
只需将路径移动到 bash 配置文件然后源。
ssh user@pc 'source ~/.bash_profile;printenv'
这对我有用。
推荐阅读
- javascript - 将日期从 UTC 转换为 EST(Javascript、HTML)
- keycloak - 通过 CLI 为 Keycloak 配置 reCAPTCHA
- python - Python数组与“id”字段合并
- django - 使用 Django 在 postgresql 中保存编辑历史的最佳方法
- angular - 当内部状态发生变化时如何触发 Angular 控制器方法?
- python - 排除单词但在正则表达式中包含字符
- java - 在“是”继续但在询问后终止的地方做“是”或“否”
- discord - 如何删除 embed yagpdb 自定义命令
- python - 如何停止在列表中放置元素
- azure - 没有为所有作业加载源代码 azure DevOps 管道