Pythonスクリプトをサクッとコマンド化してみた

2021.07.13

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、森田です。

みなさん、Python使ってますか?

個人的には、他の言語よりも多く触れてきたので簡単なことはPythonでサクッと済ませることが多いです。

その際によく使用する処理はLinuxコマンドとして実行したいのですが、ファイルを移動して、パスを通して ...

と毎度毎度この作業をするのが面倒だったので、Pythonファイルを簡単にコマンド化できるスクリプトを作りました。

動作環境

他のOSやShellにも簡単に対応できますが、とりあえず自分の環境で動作のみを想定しました。

  • Mac OS
  • zsh
  • Python3

コマンド化の手順

インストール

下記のリポジトリをクローン(clone)します。

クローン後、install.pyを実行させます。

python install.py

これで、コマンド化するためのpycmdが認識されるようになります。(.zshrcを再度読み込む必要があるためターミナルの再起動などを行ってください)

コマンド化

コマンド化するファイル名を指定します。

pycmd create ファイル名

コマンド一覧

pycmd ls

コマンド削除

pycmd del コマンド名

実際にやってみる

コマンド化

試しにリポジトリ内にあるhello.pyをコマンド化します。

% pycmd create hello.py
New command name ->hello
Command description ->hello world

コマンド実行

% hello
hello,world!

最後に

今回コマンド化ができるようにスクリプトを作成しましたが、まだ改良の余地があります。

また、登録したスクリプトは.pycmd-scriptsに保存されるようにしているので、これをgitで管理すれば別環境への移行も簡単にできそうです。