いくつかのシェルコマンドとその入力を含むIPythonノートブックをまとめたいと思います。IPython(ノート)シェルコマンドにインライン入力を提供するにはどうすればよいですか?
bash-3.2$ mysql -u root <<END_IPUT
> use mydb;
> show tables;
> END_INPUT
私はIPythonで同じ効果を得るにはどうすればよい
、特にjupyterノートで:bashプロンプトで、私は「ヒアドキュメント」構文を使用することができますか?私はいくつかの構文上の細かな点を有効にする方法を示し、「ライン魔法」または「セル 魔法」、例えば:
In [7]: !! ls -tF
Out[7]: ['Demo-notebook.ipynb',
'createdb.sql',
...
私はIPython as a system shellで見てきた、とIPythonとしてシェルコマンドを実行する方法を知っています。以下の後、私は!
または
# Turn everything in $PATH into an alias;
# then enable calling aliases without ! or %
%rehashx
%autocall 2
!!
を付加することなく、システムコマンドを実行することができます。しかしこれのどれも、これらのコマンドをインラインに入力を提供するのに役立ちますしない:パイソンSyntaxError
にヒアドキュメント構文はIPythonでは無効であり、その結果。それで私はどうしますか?
bashセルの魔法を試しましたか? '%% bash'という行でセルを開始し、残りの部分にbashコードを入れます。 –
良い提案、ありがとう!私はすでに '%% sx'を見つけました。これは私の考えと同じことです。しかし、 '%bash'のドキュメンテーションは、私が探していた' %% script'をもたらしました。その間、私は特にsqlのための拡張を発見しました。これは私の直面する問題をより良く解決しました。しかし、あなたの提案に応じて答えを広げたいと思ったら、私はそれを受け入れます。 – alexis
@トーマス、あなたが3回目に自分のタグを削除する前に、それぞれの人に何人いるかを見てください。 [tag:ipython-notebook]に問題がある場合は、タグをマージするようにプロセスを進めてください。 – alexis