私Jupyterノートは私の.bash_profile
で私はexport
すべてが、私alias
何を拾うように見えます。使用bash_profile別名
私はbin/sh
を使用していると思いますので、bashプロファイルのエイリアスは移植されませんが、%%bash
の魔法も私が書いたエイリアスを拾いません。
私のbashプロファイルでエイリアスを!
(理想的)から利用できるようにするか、少なくとも%%bash
を使用する方法がありますか?
私Jupyterノートは私の.bash_profile
で私はexport
すべてが、私alias
何を拾うように見えます。使用bash_profile別名
私はbin/sh
を使用していると思いますので、bashプロファイルのエイリアスは移植されませんが、%%bash
の魔法も私が書いたエイリアスを拾いません。
私のbashプロファイルでエイリアスを!
(理想的)から利用できるようにするか、少なくとも%%bash
を使用する方法がありますか?
これは、(私がjupyter issueで見つかったハックから変更のpython3を、)動作するようです
import subprocess
lines = subprocess.check_output('source ~/.bash_profile; alias',shell=True).split(b'\n')
manager = get_ipython().alias_manager
for line in lines:
line = line.decode("utf-8")
split_index = line.find('=')
cmd = line[split_index+1:]
alias = line[:split_index]
cmd = cmd[1:-1]
print ("ALIAS:{}\t\tCMD:{}".format(alias,cmd))
manager.soft_define_alias(alias, cmd)
ここでは、回避策未満のソリューションです別の代替は、です:あなたが使用してノートブックにローカルエイリアスを定義することができます%alias
の魔法を使用し、将来的には%store
という魔法を使ってこれらのエイリアスを利用できるようにします。ここではより多くの別名trickiness:https://github.com/ipython/ipython/wiki/Cookbook:-Storing-aliases
もっとここ%store
魔法に:http://ipython.readthedocs.io/en/stable/config/extensions/storemagic.html
次のステップは、これらのエイリアスを永続化する%store
魔法をハッキングされています。後世のためにhttps://github.com/ipython/ipython/blob/master/IPython/extensions/storemagic.py
を、ここでの結果は最終的に解決策を見つける前にいくつかの実験を実行しました。
私は%bash_profileを%% bashセルに入れました。そのセルの中から、自分の.bash_profileで定義した変数の値を調べることができ、alias
を呼び出してエイリアス化されたコマンドを列挙することができました。しかし、私はまだエイリアスコマンドを使用することができませんでした。さらに、私の.bash_profileで定義された変数は、ソースコールのあるセル内でしかアクセスできませんでした。後続の%% bashでアクセスしようとすると、セルが機能せず、alias
コマンドも失敗しました。さらに興味深いことに:私が!
を使用していた場合、自分のbashプロファイルで定義された変数を調べることができず、同じセルに!
シェルコマンドで別名をリストアップすることもできませんでした。
十分に言えば、の魔法はかわいいです。