8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

xonshの導入と使い方のメモ

Last updated at Posted at 2019-11-05

xonshとは

xonsh(コンシュって呼んでる)はshellの一種でpythonをshell上で実行し、ファイル操作などを行うことができます。
クロスプラットフォームで駆動し、使い心地としては、jupyterのようなpythonのREPLに近いかたちでshellの操作が行なえます。
pythonが実行できる関係上、これまでのshellの様に無理やり1行で書いたりする必要がなく、変数などを用いての操作も可能です。

導入手順

公式がそれぞれのOSのインストールガイドを用意してくれてるので、それに従いましょう。

linux
mac
windows

installがおわったら、terminal上でxonshと打って実行できます。

さっくり使い方

使い方編

python 文法は特になにも指定せずに書けます。

print ("hello") # helloと表示される

enterと押すと自動的に改行されるので、複数行で書ける。

for num range(1,10):
    print(num) # 1~ 9 の数字が順番に改行されて表示される。

xonshはshellの一種なので、コマンドを実行してそれを受け取って実行したりも出来ます。
以下は、現在の階層のファイル一覧を文字列でうけとって、一文字ずつ出力していきます。

for file_name in $(ls):
    print(file_name)

設定編

自分のhome直下に .xonshrc というファイルを作成して、
そこにエイリアスや、起動時の処理を書けます。

aliases["ga"] = "git add"
aliases["gc"] = "git commit"
aliases["gp"] = "git push"
aliases["gpu"] = "git pull"
aliases["gcl"] = "git clone"
aliases["gb"] = "git branch"
aliases["gch"] = "git checkout"

一部ですが、僕は雑にgitのエイリアスを設定しています。

注意点

nvmとか、anaconda みたいな感じで、 .bashrcに処理が書かれるものは注意してください。
僕は .bashrcから xonshコマンドを実行して、ターミナルを開いたときにxonshを使えるようにしてました。

ただ、 anacondaなどのbashrcに処理を書き込むものをインストールした場合、 pathが指定される前に、xonshが実行されて、
おかしなことになったりします。

なので、インストールしたのに、xonsh上ではコマンドが打てなくて、 bash上では打てるということがある場合は、bashrcの中を確認してみましょう。

終わりに

よき、xonshライフを

8
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?