From a5ef66c3e779279bd92982f02579329e89f1d0b7 Mon Sep 17 00:00:00 2001 From: Anton Bobov Date: Thu, 13 Oct 2011 11:57:57 +0600 Subject: Fixup. --- clone_and_link.sh | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/clone_and_link.sh b/clone_and_link.sh index 9140361..94b09fa 100755 --- a/clone_and_link.sh +++ b/clone_and_link.sh @@ -5,9 +5,32 @@ set -e dir=dot-files/files +os=$(uname -o) + +create_windows_link() +{ + target=$target/$(basename "$link") + rm -rvf "$target" + if [ -d "$link" ] ; then + cmd /c mklink /D $(cygpath -w "$target") $(cygpath -w "$link") + else + cmd /c mklink $(cygpath -w "$target") $(cygpath -w "$link") + fi +} + +create_link() +{ + local link=$1 + local target=$2 + case "$os" in + "Cygwin") create_windows_link ;; + *) ln --verbose --symbolic --force "$link" "$target" ;; + esac +} + cd && ls --format=single-column --directory $dir/{,.}* | while read f ; do [ "$f" == "$dir/." ] || [ "$f" == "$dir/.." ] || - ln --verbose --symbolic --force "$f" ~/test/ + create_link "$f" . done -- cgit v1.2.3