diff --git a/Documentation/NuttShell.html b/Documentation/NuttShell.html
index 10b4ea5839..e3078d732c 100644
--- a/Documentation/NuttShell.html
+++ b/Documentation/NuttShell.html
@@ -1712,7 +1712,7 @@ ls [-lRs] <dir-path>
-R
-
Show the constents of specified directory and all of its
+
Show the contents of specified directory and all of its
sub-directories.
diff --git a/tools/link.bat b/tools/link.bat
index 434574ee36..22ddaf14b1 100755
--- a/tools/link.bat
+++ b/tools/link.bat
@@ -2,7 +2,7 @@
rem tools/link.bat
rem
-rem Copyright (C) 2012 Gregory Nutt. All rights reserved.
+rem Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
rem Author: Gregory Nutt
rem
rem Redistribution and use in source and binary forms, with or without
@@ -33,6 +33,12 @@ rem ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
rem POSSIBILITY OF SUCH DAMAGE.
rem
+set usemklink=
+if "%1"=="-m" (
+set usemklink="y"
+shift
+)
+
set src=%1
set link=%2
@@ -77,8 +83,14 @@ rem Copy the directory
:MkLink
+if "%usemklink%"=="y" (
/user:administrator mklink /d %src% %link%
goto :End
+)
+
+xcopy %src% %link% /c /q /s /e /y /i
+echo FAKELNK > include\apps\.fakelnk
+goto :End
:ShowUsage
echo USAGE: %0 ^ ^
diff --git a/tools/unlink.bat b/tools/unlink.bat
index 25e83bb9f8..83b3b7a8a8 100755
--- a/tools/unlink.bat
+++ b/tools/unlink.bat
@@ -2,7 +2,7 @@
rem tools/unlink.bat
rem
-rem Copyright (C) 2012 Gregory Nutt. All rights reserved.
+rem Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
rem Author: Gregory Nutt
rem
rem Redistribution and use in source and binary forms, with or without
@@ -42,8 +42,11 @@ rem Check if something already exists at the link path
if exist "%link%" goto :LinkExists
-echo %link% does not exist
-goto :ShowUsage
+rem It is not an error if the link does not exist
+rem echo %link% does not exist
+rem goto :ShowUsage
+
+goto :End
rem %link% make be a symbolic link or it may be a copied director (with
rem a .fakelnk file in it). It really does not matter which: We do the