Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Creating a CLI (Shell?) in Python

I am very newbie in Python but I have to implement for school a command line interpreter in Python language, but I am kinda lost in how to do that.

I have already read some tutorials and created a simple file called functions.py where i include some simple functions like this:

def delete(loc):
    if os.path.exists(loc) == True:
        os.remove(loc)
        print "Removed"
    else:
        print "File not exists"

Now.. here is the thing.. in order to use this I must import it inside the python command interpreter, like...

import functions
functions.delete("file to delete")

How can I make a Shell/CLI so instead of have to write all of this I can just write like:

delete file_name

Thanks!

like image 412
PGZ Avatar asked Jan 23 '11 07:01

PGZ


2 Answers

Or if you want a cmd shell, you could use the cmd lib. It offers python interfaces to making command lines. http://docs.python.org/library/cmd.html

like image 85
Jakob Bowyer Avatar answered Oct 04 '22 02:10

Jakob Bowyer


I think you should now to use simple argparse module to get command line arguments


import argparse

from functions import delete

parser = argparse.ArgumentParser()
parser.add_argument('-f', '--file')

args = parser.parse_args()

delete(args.file)

Hope this should work for you

Sultan

like image 38
sultan Avatar answered Oct 04 '22 02:10

sultan