如何使用~/.python 3.2.0上的bashrc别名



我需要在ippython上使用~/.bashrc的别名。

一开始我试过了,但是没有用

%%bash 
source ~/.bashrc

根据这篇文章我们应该做

%%bash 
. ~/.bashrc
f2py3 -v

在木星上运行需要20秒,我得到:

bash: line 2: f2py3: command not found

我的~/.bashrc文件看起来像

alias f2py3='$HOME/python/bin/f2py'

bash: line 2: type: f2py3: not found

别名、源和%rehashx%都不能工作

%%bash
alias f2py3='$HOME/python/bin/f2py'

我发现问题出在Python上,它不能用sh和bash执行alias命令。

我可以使用别名与IPython魔术吗?

您可以在ipython配置中解析您的bashrc文件并添加您定义的任何自定义别名:

import re
import os.path
c = get_config()
with open(os.path.expanduser('~/.bashrc')) as bashrc:
    aliases = []
    for line in bashrc:
        if line.startswith('alias'):
            parts = re.match(r"""^alias (w+)=(['"]?)(.+)2$""", line.strip())
            if parts:
                source, _, target = parts.groups()
                aliases.append((source, target))
    c.AliasManager.user_aliases = aliases

这个应该放在~/.ipython/profile_default/ipython_config.py

%rehashx使系统命令在别名表中可用,因此如果您想使用ipython作为shell,这也非常有用。

最新更新