Two advantages come to mind:
Simplicity: direct access to all wonderful linux tools wc
, ls
, cat
, grep
, sed
... etc.
Why constantly use python's subprocess
module?
I'm increasingly fond of using gnu parallel, with which you can execute your bash scripts in parallel. E.g. from the man page, batch create thumbs of all jpgs in directory in parallel:
ls *.jpg | parallel convert -geometry 120 {} thumb_{}
By the way, I usually have some python calls in my bash scripts (e.g. for plotting). Use whatever is best for the task!