X-Git-Url: https://git.ralfj.de/saartuer.git/blobdiff_plain/6e7d90d419547705cb125adc7fe3626d9dc0fd49..a7c0b8e1ba3fc6170f14bb0c964e5ac9e9ba4881:/tyshell diff --git a/tyshell b/tyshell deleted file mode 100755 index 34ef515..0000000 --- a/tyshell +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/python3 -import os -import readline -import shlex -import sys -import subprocess -import socket - -tuerSock = "/run/tuer.sock" - -# use a histfile -histfile = os.path.join(os.path.expanduser("~"), ".pyshellhist") -try: - readline.read_history_file(histfile) -except IOError: - pass -import atexit -atexit.register(readline.write_history_file, histfile) - -# available commands -def help(c): - print("Available commands: %s" % ", ".join(sorted(commands.keys()))) - -def extcmd(cmd): - def run(c): - ret = subprocess.call(cmd) - if ret != 0: - print("Command returned non-zero exit statis %d" % ret) - return run - -def sendcmd(addr, cmd): - def run(c): - print("Running %s..." % (cmd)) - s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) - s.connect(addr) - s.send(cmd.encode()) - data = s.recv(4) - s.close() - print("...done") - if data != b'1': - print("Received unexpected answer %s" % str(data)) - return run - -commands = { - 'exit': None, # catched below, quits the loop - 'help': help, - 'open': sendcmd(tuerSock, 'open'), - 'close': sendcmd(tuerSock, 'close'), - 'buzz': sendcmd(tuerSock, 'buzz'), -} - -# input loop -print("Welcome to tyshell. Use help to see what you can do.") -while True: - try: - command = input("$ ") - except EOFError: - print() - break - command = shlex.split(command) - if not len(command): continue - # execute command - if command[0] == "exit": - break - elif command[0] in commands: - try: - commands[command[0]](command) - except Exception as e: - print("Error while executing %s: %s" % (command[0], str(e))) - else: - print("Command %s not found. Use help." % command[0]) -print("Bye")