36 lines
1.4 KiB
Python
Executable file
36 lines
1.4 KiB
Python
Executable file
#!/bin/bash /usr/scripts/python.sh
|
|
# -*- coding: utf8 -*-
|
|
# Script utilisé par l'intranet et autres pour ecrire le .forward dans le home
|
|
# Executé avec un sudo
|
|
# detraz@crans.org
|
|
|
|
import argparse
|
|
|
|
def getforward(user):
|
|
"""Bonjour, j'aurais pu être une docstring"""
|
|
try:
|
|
mailredirect = open('/home/%s/.forward' % (user,)).readlines()[0]
|
|
except IOError:
|
|
mailredirect = "Inconnu"
|
|
print mailredirect
|
|
return
|
|
|
|
def writeforward(user,txt):
|
|
"""Bonjour, j'aurais pu être une docstring"""
|
|
open('/home/%s/.forward' % (user,), 'w').write(txt)
|
|
return
|
|
|
|
if __name__=="__main__":
|
|
parser = argparse.ArgumentParser(description="Script qui, éventuellement appelé avec sudo, permet d'écrire dans le .forward de quelqu'un.", add_help=False)
|
|
meh = parser.add_mutually_exclusive_group()
|
|
parser.add_argument("-h", "--help", help="Affiche cette aide et quitte.", action="store_true")
|
|
parser.add_argument("-m", "--mail", help="Mail d'utilisateur", type=str, action="store")
|
|
parser.add_argument("-n", "--name", help="Nom d'utilisateur", type=str, action="store")
|
|
meh.add_argument("-r", "--read", help="Lire", action="store_true")
|
|
meh.add_argument("-w", "--write", help="Écrire", action="store_true")
|
|
|
|
args = parser.parse_args()
|
|
if args.read:
|
|
getforward(args.name)
|
|
elif args.write:
|
|
writeforward(args.name, args.mail)
|