参考
[Python] スクリプトを実行可能にする方法 | Memo on the Web
やってみる
まず、python3コマンドのパスを調べる。
$ which python3 /usr/bin/python3
1行目に書く。
some.py
#!/usr/bin/python3 print('なんかやるコード')
ファイルに権限を与える。
$ chmod u+x some.py
許可を与えないと以下のようなエラーで実行できない。
$ ./some.py bash: ./somepy: 許可がありません
以後、以下で実行できる。
./some.py
実行時、python3
を省略できる。
しかし、./
を付与しないと以下のようなエラーになる。
$ some.py some.py: コマンドが見つかりません
python3
は省略できたが、今度は./
を追加せねば動作しなくなってしまった。わかりにくくなっただけのような気がする。
課題
./some.py
でなくsome
で実行したい。
- 相対パス形式にする必要がある
- またはフルパスを指定する必要がある
- 拡張子が必要
シンボリックリンクとそれを環境変数が通ったパスに配置すればできるのかもしれない。
所感
Pythonコードを実行ファイル形式にする方法もあるようだが、かなり面倒くさそう&ファイルサイズ大きそうで微妙。