[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: bash vs. python scripts - which one is better?



On Aug 7, 1:50 pm, "Manon Metten" <manon.met...@gmail.com> wrote:

> - Which one is easiest to learn?
> - Which one is more powerful?
> - Can I execute /bin commands from within a python script

Sorry if someone else already pointed to the Python Tutorial, but the
very beginning tries to address when you might want to use Python
instead of a shell script. Written by Guido his own self. I'm fairly
new to both Python and Linux and after about a year or so of both I
would say that Python is easier to learn and more powerful, but it's
silly not to learn the ins and outs of commands like FIND and GREP
which, when used properly, often start becoming scripts.

I would say learn both, and spend your time deciding WHEN to use
which, not choosing between them.

from http://docs.python.org/tut/node3.html

If you do much work on computers, eventually you find that there's
some task you'd like to automate. For example, you may wish to perform
a search-and-replace over a large number of text files, or rename and
rearrange a bunch of photo files in a complicated way. Perhaps you'd
like to write a small custom database, or a specialized GUI
application, or a simple game.

If you're a professional software developer, you may have to work with
several C/C++/Java libraries but find the usual write/compile/test/re-
compile cycle is too slow. Perhaps you're writing a test suite for
such a library and find writing the testing code a tedious task. Or
maybe you've written a program that could use an extension language,
and you don't want to design and implement a whole new language for
your application.

Python is just the language for you.

You could write a Unix shell script or Windows batch files for some of
these tasks, but shell scripts are best at moving around files and
changing text data, not well-suited for GUI applications or games. You
could write a C/C++/Java program, but it can take a lot of development
time to get even a first-draft program. Python is simpler to use,
available on Windows, MacOS X, and Unix operating systems, and will
help you get the job done more quickly.

rd



Reply to: