summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rwxr-xr-xadopt28
1 files changed, 28 insertions, 0 deletions
diff --git a/adopt b/adopt
new file mode 100755
index 0000000..94509c3
--- /dev/null
+++ b/adopt
@@ -0,0 +1,28 @@
+#!/bin/sh
+DOTFILES_DIR=$(dirname $(readlink -f $0))
+
+if [ "$#" -lt 2 ]
+then
+  echo "usage: $(basename $0) tag file-to-adopt"
+  exit 1
+fi
+
+if [ -d $2 ]
+then
+  TARGET="$DOTFILES_DIR/$1/$2"
+  if ! [ -d $TARGET ]
+  then
+    mkdir -p $TARGET
+  fi
+  mv $2/* $TARGET
+  ln -s $TARGET/* "$2"
+elif [ -f $2 ]
+then
+  TARGET="$DOTFILES_DIR/$1/$(dirname $2)"
+  if ! [ -d $TARGET ]
+  then
+    mkdir -p $TARGET
+  fi
+  mv $2 $TARGET
+  ln -s $TARGET/$(basename $2)
+fi