win2008R2 using gnu grep/awk to find only the I instance out of the command

Ok, running tsm on 2008R2, and I have the gnu awk and grep installed...I want to only capture inactive (I) files inside of the backup...I can get this to work on linux, but because windows interprets " ' ` differently, i can't get it to print out right...Here's what I have:

so basically here's the command

F:\Program Files\Tivoli\TSM\baclient>dsmc q backup f:\* -subdir=yes -ina | grep "0  B" | awk "$1<=0"



             0  B  06/11/2012 13:55:09             STANDARD             A  \\virttsm\f$\db001
             0  B  06/11/2012 16:08:16             STANDARD             A  \\virttsm\f$\FILES
             0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES
             0  B  06/11/2012 13:55:09             STANDARD             A  \\virttsm\f$\db001\SERVER1
             0  B  06/11/2012 13:55:09             DEFAULT              A  \\virttsm\f$\db001\SERVER1\SQLCRT.FLG
             0  B  06/11/2012 16:08:16             DEFAULT              A  \\virttsm\f$\FILES\dsmc
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (10)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (11)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (12)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (13)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (14)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (15)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (16)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (17)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (18)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (19)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (2)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (20)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (21)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (3)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (4)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (5)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (6)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (7)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (8)
             0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (9)

then inside of unix i would just print where field 6 == I, any ideas inside of windows so that I only capture the I column

thxs in adv

awk '$1 >= 0 { print $6 }'

Ok, so the first command gives me this:

0  B  06/11/2012 13:55:09             STANDARD             A  \\virttsm\f$\db001
 0  B  06/11/2012 16:08:16             STANDARD             A  \\virttsm\f$\FILES
 0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES
 0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES1
 0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES2
 0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES3
 0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES4
 0  B  06/11/2012 13:55:09             STANDARD             A  \\virttsm\f$\db001\SERVER1
 0  B  06/11/2012 13:55:09             DEFAULT              A  \\virttsm\f$\db001\SERVER1\SQLCRT.FLG
 0  B  06/11/2012 16:08:16             DEFAULT              A  \\virttsm\f$\FILES\dsmc
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (10)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (11)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (12)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (13)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (14)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (15)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (16)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (17)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (18)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (19)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (2)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (20)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (21)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (3)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (4)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (5)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (6)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (7)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (8)
 0  B  06/11/2012 13:03:39             DEFAULT              A  \\virttsm\f$\FILES\file_1888 - Copy (9)

Then what i need with the additional awk parameters is the following:

0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES1
0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES2
0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES3
0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES4
etc

output that I need to get would be this:

0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES1
0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES2
0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES3
0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES4

Where I need to key off of that damn (I). No changes, but grep just can't get er done...

0  B  06/11/2012 13:55:09             STANDARD             A  \\virttsm\f$\db001
0  B  06/11/2012 16:08:16             STANDARD             A  \\virttsm\f$\FILES
0  B  06/11/2012 13:03:39             STANDARD             I  \\virttsm\f$\FILES
0  B  06/11/2012 13:55:09             STANDARD             A  \\virttsm\f$\db001

---------- Post updated at 03:16 PM ---------- Previous update was at 03:14 PM ----------

this does not work...

Of course it doesn't. You hadn't explained what you wanted in detail enough for me to make the right guess.

Working on it.

So you just want to change the 6th column to "I" all the time?

You don't need 'grep' by the way.

awk '/0  B/ && ($1 >= 0) { $6="I"; print }'

no i do not want to change anything, what I need is to find only the files that have the $6 column that is set to "I". I would like to grep/awk/sed out all the entries marked with an "A" in the same field....

---------- Post updated at 03:26 PM ---------- Previous update was at 03:20 PM ----------

Here it is, found on another forum, then modified...
dsmc q backup f:\* -subdir=yes -ina | grep "0 B" | awk "$1<=0" | awk "{ if ($6 ~ /I/) print $0}"
0 B 06/11/2012 13:03:39 STANDARD I \\virttsm\f$\FILES
0 B 06/11/2012 13:03:39 STANDARD I \\virttsm\f$\FILES1
0 B 06/11/2012 13:03:39 STANDARD I \\virttsm\f$\FILES2
0 B 06/11/2012 13:03:39 STANDARD I \\virttsm\f$\FILES3

I can only give you what you ask for in the first place. And your output data really didn't resemble your input.

You can simplify that into one tiny awk statement:

awk '/0 B/ && ($6 == "I") && ($1<=0)'

dude, it's all kewl, seriously thanks for the help! :smiley: