diff --git a/packages/_todo/dirmir.sh b/packages/_todo/dirmir.sh new file mode 100644 index 0000000..e764fb8 --- /dev/null +++ b/packages/_todo/dirmir.sh @@ -0,0 +1,22 @@ +#!/bin/sh +SOURCE="$1" +TARGET="$2" + +if [ ! -d "$SOURCE" ] || [ $# -ne 2 ]; then + echo >/dev/stderr "Usage: $1 SOURCE TARGET" + exit 1 +fi + +if [ -e "$TARGET" ]; then + echo >/dev/stderr "$TARGET" already exists. Please use a different name. + exit 1 +fi + +for entry in $(find "$SOURCE"); do + if [ -d "$entry" ]; then + mkdir -p "$TARGET/$entry" + else + # create a file with the same permissions as $entry + install -m "$(stat -c %a "$entry")" /dev/null "$TARGET/$entry" + fi +done