diff --git a/bin/scp-to-all-nodes b/bin/scp-to-all-nodes index 2ad9f27..cf237a7 100755 --- a/bin/scp-to-all-nodes +++ b/bin/scp-to-all-nodes @@ -1,9 +1,21 @@ #!/usr/bin/env bash set -e -source lib.sh +_dir="$(dirname -- "$0")/.." +_lib="$_dir/lib.sh" +_var="$_dir/var.sh" -_targetFile="$1" +source "$_lib" +source "$_var" + +_recursive=false + +if [[ "$1" == "-r" ]]; then + _recursive=true + _targetFile="$2" +else + _targetFile="$1" +fi if ! [[ -f "$_targetFile" ]]; then echo -n "file not found: $1" @@ -27,6 +39,10 @@ echo "'" get-targets | while read -r line; do if ! ignore "$line"; then echo "copying to $line" - scp "$_targetFile" "$line$_targetDir" + if $_recursive; then + scp -r "$_targetFile" "$line$_targetDir" + else + scp "$_targetFile" "$line$_targetDir" + fi fi done