diff --git a/programs/cmd/builtins.c b/programs/cmd/builtins.c
index a764228..2a075c5 100644
--- a/programs/cmd/builtins.c
+++ b/programs/cmd/builtins.c
@@ -593,6 +593,7 @@
   WCHAR variable[4];
   WCHAR *firstCmd;
   int thisDepth;
+  BOOL isDirs = FALSE;
 
   /* Check:
      the first line includes the % variable name as first parm
@@ -667,10 +668,15 @@
         hff = FindFirstFile (item, &fd);
         if (hff != INVALID_HANDLE_VALUE) {
           do {
-            thisCmdStart = cmdStart;
-            WINE_TRACE("Processing FOR filename %s\n", wine_dbgstr_w(fd.cFileName));
-            WCMD_part_execute (&thisCmdStart, firstCmd, variable,
-                                         fd.cFileName, FALSE, TRUE);
+            BOOL isDirectory = (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY);
+            if ((isDirs && isDirectory) ||
+                (!isDirs && !isDirectory))
+            {
+              thisCmdStart = cmdStart;
+              WINE_TRACE("Processing FOR filename %s\n", wine_dbgstr_w(fd.cFileName));
+              WCMD_part_execute (&thisCmdStart, firstCmd, variable,
+                                           fd.cFileName, FALSE, TRUE);
+            }
 
           } while (FindNextFile(hff, &fd) != 0);
           FindClose (hff);
