使用 vim 和 less source 等实用程序获取命令行的 .bash_login 或 .bashrc

使用 vim 和 less source 等实用程序获取命令行的 .bash_login 或 .bashrc

当我尝试在 less 或 vim 命令行中输入别名时,它们都会打印“/bin/bash: [MY ALIAS]: command not found”

此别名在 .bashrc 或 .bash_login 中定义,有没有办法将这些文件放入 vim 和 less 命令提示符中?

答案1

至少对于 Vim,你可以在你的中使用以下命令.vimrc

set shellcmdflag=-ic

有人呼吁:help :!cmd

在 Unix 上,该命令通常在非交互式 shell 中运行。如果你想使用交互式 shell(使用别名)设置。'shellcmdflag'-ic

不确定您是否可以在less...中执行相同操作

但请注意,从这些工具中调用别名通常不是一个好主意,因为别名主要用于交互的使用 shell,或者对于改变当前 shell 状态的命令(更改目录、导出新变量等)。对于所有其他情况,使用外部命令(可以使用 shell 脚本实现)通常是更好的选择。

因此,也许可以考虑这样做,将您添加到的目录中的别名替换为 shell 脚本$PATH,这样所有能够执行 shell 操作的工具都可以自然地使用这些脚本。

相关内容