i-bash/support/mklinks
2009-09-12 16:46:49 +00:00

41 lines
810 B
Text
Executable file

# Yet another script which requires an already built Bash.
#
# This makes links in the current directory to the directory specified as
# the first argument.
#
topdir=$1
if [ ! "$topdir" ]; then
echo "No directory specified. Read the script $0."
exit 1
fi
function clone_files ()
{
local dir=$1;
local files;
files=$(cd $dir; echo *);
if [ ! "$files" ]; then
return 0;
fi
for filename in $files; do
if [ -d $dir/$filename ]; then
# If the file to clone is this directory, then skip it.
if [ $(cd $dir/$filename; pwd) = $(pwd) ]; then
continue;
fi
mkdir $filename;
(cd $filename; clone_files ../$dir/$filename)
else
ln -s $dir/$filename .;
fi
done
rm -f \#* *~ .*~ *.bak .*.bak *.tmp .*.tmp *.o core a.out;
}
clone_files $topdir