我brew
将 Emacs 和 ispell 用作我的包管理器。我两个都安装了。做一个快速的谷歌,我无法弄清楚如何告诉 Emacs ispell 在哪里并加载适当的词典。
现在当我做 a 时M-x ispell-check-version
,Emacs 俏皮地回复:Searching for program: No such file or directory
.
如何配置Emacs
使用ispell
?
我在 MacOSX 上bash
用作我的外壳。我有符号链接,创建如下:
ln -s /usr/bin/python python2
Run Code Online (Sandbox Code Playgroud)
我有一个使用 python2 的包,我想在我当前的工作目录中创建一个/usr/bin/python
实际上是 python2的符号链接。当我python2
从命令行执行 a 时,我收到此错误:
python2: realpath couldn't resolve "/usr/bin/python2"
Run Code Online (Sandbox Code Playgroud)
但是像这样调用它./python2
可以正确解析路径。我PATH
已经.
在里面。事实上,为了测试,我修改了它,使其只包含.
在其中。
我该如何解决?谢谢!
以下许多建议的解决方案对我不起作用。我试图将我的问题提炼得尽可能集中和简短,这样人们就不会淹没在文字的海洋中,但显然我需要提供更多的背景知识。
我正在尝试对从 git 克隆的包进行开发。原始软件包git-multimail
是/是在 Linux 的某个变体上开发的(我猜是 Ubuntu)。我一直在尝试修改它,以便能够在 MacOSX 上使用它及其测试套件,并且尽可能少地修改。这就是为什么一些建议的解决方案不理想的原因:
以 rootpython2
身份在 /usr/bin/ 中创建一个符号链接。我正在寻找不需要这个的解决方案。这在开始时是一个明显的选择,但我想要一个尽可能少修改主机系统的解决方案。这就是为什么我想在当前工作目录中创建一个临时符号链接,将 CWD(即.
)添加到我的路径中,然后在完成后销毁它(即符号链接)。
创建一个包装脚本以使用现有的 python 调用 python 脚本。这样做的问题是,大部分测试套件使用实际的 script_files 作为可执行文件,这取决于 shebang 来找到正确的执行环境。这意味着要大量编辑测试套件。在这种情况下,(请参阅下面的测试框架片段),我必须为每个.py
文件添加一个包装器;此外,用户/开发人员必须了解使用包的不同规则,具体取决于它们所在的系统(即在 MacOSX 上,请确保不要使用 python 文件而不通过包装器调用它们或显式调用/usr/bin/python file.py
)。
#! /bin/sh
D=$(cd …
Run Code Online (Sandbox Code Playgroud)我需要将脚本作为root
. 链接中给出的说明说我应该:
chmod 4755
)。sudo /path/to/thescript.sh
)从我正在阅读的有关 SETUID 位的文档中,我的理解是通过设置它,运行脚本的人将获得所有者的特权。因此,如果脚本的所有者是root
,那么任何运行带有 SETUID 位的脚本的人都会以 root 权限运行脚本。
如果是这种情况,sudo
如果设置了 SETUID 位,为什么我需要在运行脚本之前执行 a ?
如果我需要使用sudo
来运行脚本,何必设置 SETUID 位。就像一个实验一样,我运行我的脚本只是使用sudo
它,它能够做我需要做的事情(脚本递归地更改一堆文件的权限)。