Solved

Equivalent command to Unix export paramfile=`cat /dir/dir/dir/paramlist.txt`

Posted on 2006-06-14
7
2,068 Views
Last Modified: 2012-05-05
I am trying to replicate the following Unix command set to MS-DOS  is there an equivalent in MS-DOS

Unix
export paramfile=`cat /dir/dir/dir/paramlist.txt`
..../dsjob -run $paramfile PROJECTNAME JOBNAME

MS-DOS that I have tried is

set paramfile='type c:\parameters.txt'
C:\...\dsjob.exe  -run %paramfile% ...

0
Comment
Question by:reccles
  • 2
  • 2
7 Comments
 
LVL 95

Expert Comment

by:Lee W, MVP
ID: 16907192
Translate the unix into englilsh (what you want to do) and we'll see if we can help.  Otherwise, you may be waiting for someone who knows both well.
0
 
LVL 10

Accepted Solution

by:
GuruGary earned 125 total points
ID: 16907792
That is a pretty good direct translation ... but DOS doesn't quite work that way.  What is the format of the parameters.txt file?  Is it one line per parameter like:
FILENAME=TEST.TXT
or does it have the declare syntax like:
declare -x FILENAME="TEST.TXT"
or is it something else?  If it is one line per parameter without declare, AND it is running under a command prompt under Windows NT/2000/XP/2003, you can try something like this in a batch file:

for /f "delims=" %%a in (c:\parameters.txt) do set %%a
C:\...\dsjob.exe -run PROJECTNAME JOBNAME

Do you know if the "DOS" version of this program takes the parameters from the environment?  The "for" line should load all the values into the current environment if they are in the right format, so I wouldn't think there would be a need to pass them in the .exe file if it does read them from the environment.

If they are in the "declare" format, then maybe try stripping each line down to just "variable=value" syntax and try it.
0
 
LVL 10

Expert Comment

by:pbarrette
ID: 16956436
Hi GuruGary,

Actually, if they are in the "declare -x" format, then you could still use your FOR /F idea. You'd just have to modify it a bit:

FOR /F "TOKENS=2*" %%F IN (parameters.txt) DO (SET %%G)

This will use space as the delimeter to skip "declare", place "-x" into %%F which we then ignore. Then the rest of the line goes into %%G to include spaces if needed.

pb
0
 
LVL 10

Expert Comment

by:pbarrette
ID: 17198042
Hi Sirbounty,

Long time, no see. My fault entirely.

I just suggested a minor modification to GuruGary's idea. All points should be awarded to him.

pb
0
 
LVL 10

Expert Comment

by:GuruGary
ID: 17198206
Well thanks, pb!  No objections to that from me.
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

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

YESTERDAY YESTERDAY.BAT is inspired by a previous article I wrote entitled: TOMORROW.BAT (http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/MS_DOS/A_4196-Advanced-Batch-File-Programming-TOMORROW-BAT.html). The crux of this batch f…
Introduction: Recently, I got a requirement to zip all files individually with batch file script in Windows OS. I don't know much about scripting, but I searched Google and found a lot of examples and websites to complete my task. Finally, I was ab…
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

832 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