Jon Galloway is my batch file
hero. He’s the one who introduced me to the
FOR %%A in ... syntax.
Today I needed to rename a bunch of files. On one project, we haven’t
kept our file extensions consistent when creating a stored procedure
file in a Database project. Some of them had
.prc extensions and
I wanted to rename every file to use the .sql extension. I couldn’t
simply use a batch rename program because I wanted these files renamed
within Subversion, which requires running the
svn rename command.
So using a batch file Jon sent me, I wrote the following.
FOR %%A in (*.prc) do CALL :Subroutine %%A GOTO:EOF :Subroutine svn rename %~n1.prc %~n1.sql GOTO:EOF
Pretty nifty. For each file in the current directory that ends in the
.prc extension, I call a subroutine. That subroutine makes use of the
%~n1 argument which provides the filename without the extension.
For help in writing your batch files, type
help call in the
I can see using this technique all over the place. I will leave it to my buddy Tyler to provide the Powershell version.