diff options
author | tv <tv@krebsco.de> | 2018-12-28 14:48:12 +0100 |
---|---|---|
committer | tv <tv@krebsco.de> | 2018-12-28 14:48:12 +0100 |
commit | 1d86437ff41c229989bfc5e66a4b88dd695947e4 (patch) | |
tree | 867947eac6df9b89e6af0a08ec0176ee849d6a1a /with-ssh |
Diffstat (limited to 'with-ssh')
-rwxr-xr-x | with-ssh | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/with-ssh b/with-ssh new file mode 100755 index 0000000..0419ac9 --- /dev/null +++ b/with-ssh @@ -0,0 +1,31 @@ +#! /bin/sh +# +# usage: with-ssh [--add[=KEY] ...] [COMMAND [ARGS ...]] +# +exec ssh-agent /bin/sh -eufc ' +main() { + if test $# = 0; then + set -- "$SHELL" + fi + case "$1" in + --add) + shift + ssh-add + main "$@" + ;; + --add=*) + key=$1; shift + key=${key#--add=} + ssh-add "$key" + main "$@" + ;; + *) + # lol @ parallel + ## Do not exec here because parallel will hang + #"$@" + #exit + exec "$@" + esac +} +main "$@" +' -- "$@" |