#!/usr/bin/env python3 import sys import os import re from pathlib import Path def main(): args = list(sys.argv)[1:] password = None with open(os.path.join(Path.home(), '.ssh', 'stored_passwords')) as f: for l in f: l = l.rstrip('\n') parts = l.split(None, 1) if len(parts) == 2 and any(re.match(parts[0] + r'($|:)', arg) for arg in args): password = parts[1] break if password is None: os.execvp(args[0], args) else: os.environ['SSHPASS'] = password os.execvpe('sshpass', ['sshpass', '-e'] + args, os.environ) if __name__ == '__main__': main()