かべぎわブログ

技術的なことについてかけたらいいな…

Pythonのコマンドライン引数 雑チートシート(シェルスクリプトでできたことをやりたい)

シェルスクリプトの${なにがし}をPythonだとどうやって書くのかをまとめました。
(Linux上のシェルスクリプトを適宜Pythonにしたい)

雑チートシート

Python ShellScript 説明
sys.argv[0] ${0} 自身のファイル名
sys.argv[1] ${1} 1番目の引数
len(sys.argv)-1 ${#} 引数の数(スクリプト自身のファイル名がargv[0]なので-1する)
sys.argv ${#},${*} 全引数リスト
os.getpid() ${$} スクリプトのプロセスID

上記実行のためにimport sysimport osは必要です。
__path__でも自身のファイル名を取得できる(こっちのほうがかっこいいかも)

動作確認用のスクリプト

動作確認用に作ったスクリプトはこんなかんじです。

実行結果

実行するとこんな感じです。

$ ./shell_cmdline.py wawawa sasasa
./shell_cmdline.py
wawawa
2
['./shell_cmdline.py', 'wawawa', 'sasasa']
6687

おわりに

Linux上のシェルスクリプトを適宜Pythonにしたい
かっこいいから

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング