Forums before death by AOL, social media and spammers... "We can't have nice things"
|    alt.msdos.batch.nt    |    Fun with Windows NT batch files    |    68,980 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 68,815 of 68,980    |
|    Tom Del Rosso to All    |
|    Re: Is it a file or a folder...in a netw    |
|    03 Aug 24 20:56:25    |
   
   From: fizzbintuesday@that-google-mail-domain.com   
      
   JJ wrote:   
   > On Tue, 30 Jul 2024 19:46:07 -0400, Tom Del Rosso wrote:   
   >> JJ wrote:   
   >>>> On Mon, 29 Jul 2024 18:57:26 -0400, Tom Del Rosso wrote:   
   >>>>> if exist "%file%\" (set type=Folder) else (set type=File)   
   >>>>>   
   >>>>> That works for a local file, but if %file% points to a network   
   >>>>> share then it always says Folder.   
   >>>>>   
   >>>>> Are you seeing that too?   
   >>>>>   
   >>>>> This is for win7 (not this newsreader machine).   
   >>>   
   >>> @echo off   
   >>> setlocal   
   >>> set attr=   
   >>> for %%A in ("%file%") do set attr=%%~aA   
   >>> if "%attr%" neq "" (   
   >>> echo Not found.   
   >>> goto :eof   
   >>> )   
   >>> if "%attr:d=%" == "%attr%" (   
   >>> echo It's a file.   
   >>> ) else (   
   >>> echo It's a folder.   
   >>> )   
   >>   
   >> That's great. Thanks.   
   >> But isn't the logic inverted in the first IF?   
   >> If it doesn't exist then %attr% would be an empty string, I think.   
   >   
   > You're right. It should be the opposite. I need more coffee...   
      
   Sometimes the test makes it crash if the "attr" variable is "" because   
   the file doesn't exist (or the file has a unicode name).   
      
   So I added a character.   
   set attr=_%%~aA   
   if "%attr%" neq "_" (   
      
      
   --   
   Defund the Thought Police   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca