我在 ubuntu 中安装了 emacs(使用 sudo apt-get install emacs)。我遇到的问题是,当我尝试从 emacs 中运行 shell 命令时(例如M-! ls
)输出之前是这样的:
bash: cannot set terminal process group (-1): Invalid argument
bash: no job control in this shell
In my .emacs
我有选择(setq shell-command-switch "-ic")
。这样我就可以使用我的别名和命令。这并没有给我的工作带来问题,它让我可以使用我的别名。如何在使用别名的同时避免出现此问题?
我想通过这样设置你的 shell-command-switch ,你正在执行你的代码路径.profile
或系统配置文件,这取决于 shell 中的作业控制。
我将通过在正确的代码路径中定义所需的别名来修复此错误,以便出现在不以-i
你可以尝试交换-i
with --rcfile .aliases
或类似的东西,以便alias
在 emacs 中没有什么不同alias
在您的登录 shell 中。如果您的 .bashrc 对您的工作有重要的内容,请创建一个包含内容的文件,例如 .bashrc.emacs
source .bashrc
source .aliases
并指向该文件--rcfile .bashrc.emacs
在你的(setq)
操作说明。
您在哪里定义别名? Ubuntu .bashrc 读取 .bash 别名,这也应该发生在非交互式 shell 上。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)