• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 473
  • Last Modified:

use variable file name in directory and process that file in batch command

I want to look at a directory and process (print) the random TIFF files that appear. The problem is that names are not uniform, they could be just about anything in a tiff extension.

So how do I parse the contents of a directory into a variable and process that variable? There may be more than one TIFF file waiting to be processed, I can loop it until there is nothing else to process.

I would be using the
     rundll32.exe C:\WINDOWS\System32\shimgvw.dll,ImageView_PrintTo /pt "c:\faxes\faxmessage.tiff" "\\corporate\printername" "" ""
comamnd to print the tiff files.

Thanks,
Chuck
0
fcbc
Asked:
fcbc
  • 3
1 Solution
 
Steve KnightIT ConsultancyCommented:
The for command is what you want.  You can either iterate down files using plain for

@echo off
cd /d C:\faxes
for %%a in (*.tif?) do (
  rundll32.exe C:\WINDOWS\System32\shimgvw.dll,ImageView_PrintTo /pt "%%~fa" "\\corporate\printername"
  echo Do something else with the file "%%~a", full name is "%%~fa"
)

or read a directory listing such as

@echo off
for /f %%a in ('dir /b /a-d *.tif?') do (
   echo Filename is %%~a
)

I presume you might want to do a move command after the print too?

The %%a is abritary and case sensitive, use %%T or %%t or whatever if you prefer.
the ~ means remove any " " around the filename, in case it has spaces etc. it is better to remove then add yourself.
You can add qualifiers to the %%~a to get (f = full filename, n=name, x=extension etc.)

for /? explains more.

Steve
0
 
Steve KnightIT ConsultancyCommented:
I used *.tif? btw in case you have .tif or .tiff files.

Steve
0
 
fcbcAuthor Commented:
wow - WORKS FANTASTIC.

If anyone else tries this, just have a minor correction to above:
rundll32.exe C:\WINDOWS\System32\shimgvw.dll,ImageView_PrintTo /pt "%%~fa" "" ""

you will need those extra 2 sets of quotes at the end of the line.

Thank you for your quick response!
0
 
Steve KnightIT ConsultancyCommented:
no problem for is very powerful command and used a lot around here... for /? set /? has lots of useful stuff, or ask here if needed.

stevev
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Microsoft Windows 7 Basic

This introductory course to Windows 7 environment will teach you about working with the Windows operating system. You will learn about basic functions including start menu; the desktop; managing files, folders, and libraries.

  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now