在 Linux 中通过 SSH 执行远程命令时,无法自动加载环境变量(已解决)

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: SSH远程执行命令时遇到“命令未找到”问题,原因是Linux登录方式不同导致环境变量加载差异。解决方案:将环境变量写入`/etc/profile.d/`下的文件,或手动在命令前加载环境变量,如`source /etc/profile`。

问题场景

目前我的环境变量都存储在 /etc/profile 文件中,当我通过远程 SSH 执行一些命令时,提示命令找不到,如下所示:

image.png

问题出现原因

这里找到了一张出自尚硅谷的图片,很好的解释了该问题:



这是由于 Linux 登录方式不同造成所加载的环境变量也有所不同的原因导致的。

解决方法

  1. 创建一个环境变量文件,存储在 /etc/profile.d/ 目录下,这样无论是否登录,都会自动加载。

  2. 或者在执行命令时,通过手动加载环境变量,如下所示:

image.png

相关文章
|
1天前
|
Linux 数据处理
Linux命令中的tic:深入了解与高效应用
`tic`是Linux中用于处理 Tektronix 4015 终端文本解释的命令,源于troff文本格式化系统。尽管现代系统不再常见该终端,`tic`仍用于特定数据处理,尤其是与troff配合,将troff输出转换为特定格式。使用时注意兼容性、输入格式和参数调整,如`-a`设定宽高比。通过`man tic`可获取更多详情。示例:`troff document.tr | tic`。了解这些能更好地处理特定文本格式任务。
|
1天前
|
Linux Shell 数据处理
探索Linux的`infokey`命令:终端键绑定的查询工具
探索Linux的`infokey`命令用于查询终端键绑定。它显示按键如何映射到命令,帮助用户理解终端行为。`infokey`与`ncurses`库配合,提供查询、清除和定制输出的功能。例如,`infokey -d`显示所有键绑定,`infokey -k "\e[11~"`检查F1键绑定。使用前确保安装了`ncurses`库,注意终端兼容性和权限问题。定期检查键绑定,备份配置,阅读文档以优化终端体验。
|
1天前
|
Linux 数据处理 数据库
探索Linux的`infocmp`命令:终端配置的得力助手
`infocmp`是Linux下用于查看和比较`terminfo`数据库中终端类型描述的命令。它显示终端的控制序列、按键映射等信息,并能找出不同终端的配置差异。通过参数如`-c`(以termcap格式输出)、`-d`(比较差异)和`-1`(单列显示)等可定制输出。例如,`infocmp $TERM`显示当前终端配置,`infocmp xterm vt100`比较两者差异。了解终端类型和选择合适输出格式是有效使用的关键。
|
1天前
|
存储 Linux Shell
探索Linux的`info`命令:数据处理的得力助手
`info`命令是Linux的数据处理助手,虽不直接处理数据,但提供详尽的文档支持。它是GNU项目的一部分,通过`.info`文件提供分节点的文档结构,支持搜索和交叉引用。常用参数包括`--help`、`--version`、`--node`和`--file`。例如,查询`bash` shell用法时,运行`info bash`。掌握导航、搜索功能和书签的使用能提升效率。与`man`命令结合使用,可获取全面的工具信息。定期更新Info pages以保持文档最新。
|
1天前
|
算法 网络协议 Linux
探索Linux命令idn:处理国际化域名
`idn`命令在Linux中用于处理国际化域名,转换成ASCII兼容的ACE格式或反之。它支持Punycode算法,提供命令行接口及多种参数,如`-a`转ASCII,`-d`转回国际化域名。示例包括将`xn--zhonggu-wu9d.com`转换。使用时注意有效输入,考虑版本兼容性,并可与其他工具结合使用。
|
1天前
|
Linux 数据处理 数据库
深入解析Linux命令id:理解用户身份与权限
`id`命令在Linux中用于显示用户身份(UID, GID和附加组)。它查看系统用户数据库获取信息。参数如`-u`显示UID,`-g`显示GID,`-G`显示附加组,结合`-n`显示名称而非ID。用于确认命令执行者身份,确保权限正确。在脚本中使用时注意权限管理,遵循最小权限原则。
|
1天前
|
Linux 数据处理
Linux命令iconv:字符编码转换的利器
`iconv`是Linux下的字符编码转换工具,支持多种编码如UTF-8、ISO-8859-1等。它允许用户指定源(-f)和目标(-t)编码,转换文件或输出到指定文件(-o)。使用`-l`可列出所有支持的编码。示例:将UTF-8文件转为ISO-8859-1编码:`iconv -f UTF-8 -t ISO-8859-1 input.txt -o output.txt`。在转换前确认源编码,测试小样本,备份数据,并注意特殊字符处理。
|
Ubuntu Linux 网络安全
Linux Debian11服务器安装SSH,创建新用户并允许远程SSH远程登录,并禁止root用户远程SSH登录
本文介绍了Linux Debian11服务器安装SSH,创建新用户并允许远程SSH远程登录,并禁止root用户远程SSH登录。
2418 1
Linux Debian11服务器安装SSH,创建新用户并允许远程SSH远程登录,并禁止root用户远程SSH登录
|
8月前
|
安全 Linux 网络安全
百度搜索:蓝易云 ,Linux Debian11服务器安装SSH,创建新用户并允许SSH远程登录,及SSH安全登录配置!
这些步骤提供了在Debian 11服务器上安装SSH,创建新用户并允许SSH远程登录以及进行SSH安全登录配置的指南。请确保按照步骤操作,并根据您的需求进行必要的修改。
109 0
|
10月前
|
存储 Linux 网络安全
Linux版百度网盘丨直接在服务器SSH命令行中使用百度云,轻松解决数据传输和分享难题
Linux版百度网盘丨直接在服务器SSH命令行中使用百度云,轻松解决数据传输和分享难题

热门文章

最新文章