Like Unix, the windows "shell"  has special characters too, with >  being
one of them.  You can use quotes or escape the special character, similar
to the unix way of things.  The escape character for windows is ^.
The following works:
dsmadmc -id=admin -pa=xxxx select * from nodes where  max_mp_allowed^>1
redirection:
dsmadmc -id=admin -pa=xxxx select * from nodes where max_mp_allowed^>1
>test.txt

This, along with a ton of other useful information can be found in the
excellent book "Windows NT Shell Scripting" by Tim Hill.

===================================================
      John Monahan

      Senior Consultant Enterprise Solutions
      Computech Resources, Inc.
      Office: 952-833-0930 ext 109
      Cell: 952-484-5435
      http://www.compures.com
===================================================




                      Andy Raibeck
                      <[EMAIL PROTECTED]        To:       [EMAIL PROTECTED]
                      OM>                      cc:
                      Sent by: "ADSM:          Subject:  Re: Redirect Output in 
Windows dsmadmc
                      Dist Stor
                      Manager"
                      <[EMAIL PROTECTED]
                      .EDU>


                      07/25/2002 08:48
                      AM
                      Please respond to
                      "ADSM: Dist Stor
                      Manager"






That one is a little tougher. The problem is that the Windows command
processor doesn't pass the '>' symbol to the program (to any program, not
just TSM). You can verify this for yourself by compiling this simple C
program:

========================================
/* args.c */
#include <stdio.h>

int main(int argc, char *argv[])
{
   int i = 0;

   for (i = 0; i < argc; i++)
      printf("argv[%d] = %s\n", i, argv[i]);

   return 0;
}
========================================

Example output:

========================================
C:\MyPrograms\args>args select * from nodes where max_mp_allowed>1

C:\MyPrograms\args>type 1
argv[0] = args
argv[1] = select
argv[2] = *
argv[3] = from
argv[4] = nodes
argv[5] = where
argv[6] = max_mp_allowed
========================================

As you can see, the program never even sees the > symbol, so it can't
possibly process it.

One thing I tried that seems to work, is to embed the entire admin command
in quotes, like this:

   dsmadmc -id=admin -pa=xxxxx
      "select * from nodes where max_mp_allowed>1"

and to redirect, you can do this:

   dsmadmc -id=admin -pa=xxxxx
      "select * from nodes where max_mp_allowed>1" > sel.out

Regards,

Andy

Andy Raibeck
IBM Software Group
Tivoli Storage Manager Client Development
Internal Notes e-mail: Andrew Raibeck/Tucson/IBM@IBMUS
Internet e-mail: [EMAIL PROTECTED] (change eye to i to reply)

The only dumb question is the one that goes unasked.
The command line is your friend.
"Good enough" is the enemy of excellence.




Richard Cowen <[EMAIL PROTECTED]>
Sent by: "ADSM: Dist Stor Manager" <[EMAIL PROTECTED]>
07/25/2002 05:00
Please respond to "ADSM: Dist Stor Manager"


        To:     [EMAIL PROTECTED]
        cc:
        Subject:        Re: Redirect Output in Windows dsmadmc



When will we be able to do this with a select statement and use a "greater
than" symbol under windows?

-----Original Message-----
From: Andy Raibeck [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, July 24, 2002 8:16 PM
To: [EMAIL PROTECTED]
Subject: Re: Redirect Output in Windows dsmadmc


Consider it noted.

Don't know if this will help, but if the Admin client is done in batch
mode, then the redirection will work:

   dsmadmc -id=adminid -pa=xxxxx q se > "c:\test dir\qse.txt"

Regards,

Andy

Reply via email to