Mini Shell
import code
class Console(code.InteractiveConsole):
EOF_key_sequence = '-'
def __init__(self, stdin, stdout, locals=None, filename="<console>"):
self.stdin = stdin
self.stdout = stdout
code.InteractiveConsole.__init__(self, locals, filename)
def raw_input(self, prompt=""):
"""Write a prompt and read a line.
The returned line does not include the trailing newline.
When the user enters the EOF key sequence, EOFError is raised.
"""
self.write(prompt)
line = self.stdin.readline()
if not line:
raise EOFError
line = line.rstrip()
if line == self.EOF_key_sequence:
raise EOFError
else:
return line
def write(self, data):
self.stdout.write(data)
self.stdout.flush()
Zerion Mini Shell 1.0