Solved

Creating a Batch File for Windows 7

Posted on 2014-03-03
2
517 Views
Last Modified: 2014-04-07
For Example: I’m running a small program in: Pascal called libusers

When the program is run it needs two input files from the user and does some comparison and outputs the result in a text file

So the at Dos prompt I will do the following:
C:\> pascal libusers  -i <file-1> -i <File-2> -o <finalusers.txt>

At present I have to manually type the name of the files everytime I run the program. I want to know if there is a way that I can create a batch file which can automatically pick up the files from a folder and pass them as input to the above program.

The files that I input manually sit in a folder with other files and they all have the same name – I want the batch file to pick the most recent files from that folder.  

Is this possible !!!
0
Comment
Question by:adam_kan2000
2 Comments
 
LVL 69

Expert Comment

by:Qlemo
ID: 39900752
"they all have the same name" - that is impossible, as file names are unique. I assume you mean they follow the same pattern in their name.

To automate, you'll need to have strict rules for how to find file1 and file2, and/or to tell how many files (always 2?). Best to list an example folder structure.
0
 
LVL 53

Accepted Solution

by:
Bill Prew earned 500 total points
ID: 39901242
This should do the job, just adjust the folder path in the SET near the top.

@echo off
setlocal

REM Define folder to work in, and output file name
set BaseDir=B:\EE\EE28378812\Files
set File1=
set File2=
set File3=finalusers.txt

REM Make the desired folder the current one
pushd %BaseDir%

REM Find the two most recent files
for /F "tokens=*" %%A in ('dir /b /a-d /o-d "%BaseDir%\*.*"') do (
  if defined File2 goto :GotFiles
  if defined File1 (
    set File2=%%A
  ) else (
    set File1=%%A
  )
)

:GotFiles
REM Run the PASCAL program passing in the file names
ECHO pascal libusers  -i %File1% -i %File2% -o %File3%

REM Return to original folder
popd

Open in new window

~bp
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Use this article to create a batch file to backup a Microsoft SQL Server database to a Windows folder.  The folder can be on the local hard drive or on a network share.  This batch file will query the SQL server to get the current date & time and wi…
Active Directory replication delay is the cause to many problems.  Here is a super easy script to force Active Directory replication to all sites with by using an elevated PowerShell command prompt, and a tool to verify your changes.
Learn the basics of if, else, and elif statements in Python 2.7. Use "if" statements to test a specified condition.: The structure of an if statement is as follows: (CODE) Use "else" statements to allow the execution of an alternative, if the …
The viewer will learn how to dynamically set the form action using jQuery.

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question