微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在bash -i中可用的命令不能在bash -l中访问

我不知道如何描述它。 这只是当我使用vim和set shell=bash -l 。 然后我发现一个名为mm的命令可以在terminal执行,不能在vim中执行。

而且我还发现,当我在run.sh写入这个命令并执行这个脚本。 它仍然报告command not found 。 我认为我的$HOME/.bash*文件和$HOME/.profile文件一定有问题。 我相信.profile和.bashrc几乎是一样的。

分析shell脚本参数

如何确定目录是否是在shell脚本中的挂载NFS挂载点

如何将数据从文件复制到从特定行开始的另一个文件

Bash:单引号和双引号和感叹号

在Windows中的文件夹的shell快捷方式

从$ man bash :

当bash作为交互式登录shell或者作为具有–login选项的非交互式shell调用时,它首先从文件/ etc / profile中读取和执行命令(如果该文件存在)。 读取该文件后,它将按照该顺序查找〜/ .bash_profile,〜/ .bash_login和〜/ .profile, 并从第一个存在并读取的第一个中读取和执行命令。

一个不是登录shell的交互式shell被启动时,如果该文件存在,bash将读取并执行〜/ .bashrc中的命令。

所以:

shell | files loaded --------+----------------- bash -l | /etc/profile | ~/.bash_profile | ~/.bash_login | ~/.profile --------+----------------- bash -i | ~/.bashrc

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐