Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python3
- import os
- import sys
- import codecs
- def rot(msg):
- return codecs.encode(msg, "rot13")
- def parse_arguments():
- infile = None
- outfile = None
- log_to_terminal = True
- msg = ""
- for i, arg in enumerate(sys.argv[1:]):
- if arg == "-i": #input file
- msg += open(sys.argv[i+2], "r").read() + "\n"
- elif arg == "-s": #silent
- log_to_terminal = False
- elif arg == "-t": #input text
- msg += sys.argv[i+2] + "\n"
- elif arg == "-o": #output file
- outfile = sys.argv[i+2]
- if msg == "":
- print("No text was entered to be encoded. Please add text using -t \"text\" or -i \"/path/to/file\"")
- return infile, outfile, log_to_terminal, msg
- def main(infile, outfile, log_to_terminal, msg):
- if not infile == None:
- msg = open(infile, "r").read()
- out = rot(msg)
- if log_to_terminal:
- print(out);
- if not outfile == None:
- file = open(outfile, "w")
- file.write(out)
- file.close()
- if __name__ == "__main__":
- if "--help" in sys.argv:
- print("""Usage: ./script.py [-option] [data]\n -i input file path\n -s do not print output in terminal\n -t input text\n -o output to file path\n\nMultiple -t and -i options can be used. Each instance will be seperated by a new line.""")
- exit()
- infile, outfile, log_to_terminal, msg = parse_arguments()
- main(infile, outfile, log_to_terminal, msg)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement