请问如何取屏幕上的输出结果作为新参数?(复杂情况)

请问如何取屏幕上的输出结果作为新参数?(复杂情况)

程序a的输出结果如下,打在屏幕上
       Attribute   Type  ID  Default  Current  # Entry Min  Max   Step Flags
      Brightness  RANGE   0     50        50     ---    0    100    1   --
        Contrast  RANGE   1      4         4     ---    0      7    1   --
  Flicker Filter  RANGE   3      1         1     ---    0      4    1   --
      Saturation  RANGE  15      4         4     ---    0      7    1   --
             Hue  RANGE   2     50        50     ---    0    100    1   --
     Text Filter  RANGE  12      0         0     ---    0      3    1   --
     Macrovision   BOOL  13      0         0     ---   --   ----   --    0
  Overscan ratio   LIST   6      1         1       5   --   ----   --    0
    DVD overscan   ENTRY  1   ----         1     ---   --   ----   --    0
           Lower   ENTRY  2   ----         2     ---   --   ----   --    0
             Low   ENTRY  3   ----         3     ---   --   ----   --    0
        Standard   ENTRY  4   ----         4     ---   --   ----   --    0
            High   ENTRY  5   ----         5     ---   --   ----   --    0
       TV Format   LIST   8      1        20      20   --   ----   --    0
          NTSC-M   ENTRY  1   ----         1     ---   --   ----   --    0
        NTSC-M-J   ENTRY  2   ----         2     ---   --   ----   --    0
       NTSC-4.33   ENTRY  3   ---- NOT USED ----
           PAL-B   ENTRY  4   ----        32     ---   --   ----   --    0
           PAL-G   ENTRY  5   ----        64     ---   --   ----   --    0
           PAL-D   ENTRY  6   ----       128     ---   --   ----   --    0
           PAL-H   ENTRY  7   ----       256     ---   --   ----   --    0
           PAL-I   ENTRY  8   ----       512     ---   --   ----   --    0
           PAL-M   ENTRY  9   ---- NOT USED ----
           PAL-N   ENTRY 10   ---- NOT USED ----
          PAL-Nc   ENTRY 11   ---- NOT USED ----
         SECAM-L   ENTRY 12   ----      65536     ---   --   ----   --    0
        SECAM-L1   ENTRY 13   ----      131072     ---   --   ----   --    0
         SECAM-B   ENTRY 14   ----      262144     ---   --   ----   --    0
         SECAM-D   ENTRY 15   ----      524288     ---   --   ----   --    0
         SECAM-G   ENTRY 16   ----      1048576     ---   --   ----   --    0
         SECAM-H   ENTRY 17   ----      2097152     ---   --   ----   --    0
         SECAM-K   ENTRY 18   ----      4194304     ---   --   ----   --    0
        SECAM-K1   ENTRY 19   ----      8388608     ---   --   ----   --    0
      DIGITAL-TV   ENTRY 20   ----      33554432     ---   --   ----   --    0
       TV Output   LIST  14      1         1       6   --   ----   --    0
Composite and S-Video   ENTRY  1   ----         4     ---   --   ----   --    0
  Composite only   ENTRY  2   ----         1     ---   --   ----   --    0
    S-Video only   ENTRY  3   ----         2     ---   --   ----   --    0
  Component only   ENTRY  4   ----         3     ---   --   ----   --    0
            None   ENTRY  5   ----         5     ---   --   ----   --    0
           SCART   ENTRY  6   ----         6     ---   --   ----   --    0
            DACA  RANGE  26      1         3     ---    0      4    1   --
            DACB  RANGE  27      2         2     ---    0      4    1   --
            DACC  RANGE  28      3         1     ---    0      4    1   --
            DACD  RANGE  29      0         0     ---    0      4    1   --
       EnableDVI   BOOL  30      0         0     ---   --   ----   --    0
     SoftECCGate   BOOL  31      1         1     ---   --   ----   --    0
          PDName  STRING  32  --  CX25873 Port Driver --  --  --   --  --
       PDBldDate  STRING  33  --  Sep 19 2005      --  --  --   --  --
       PDBldTime  STRING  34  --  08:56:05         --  --  --   --  --

现在欲将ID列内容取出,作为程序b的参数,请问如何写shell?      
复制内容到剪贴板
代码:
[No.381 19:43:23 ~ ]# ls -l
total 92
-rw-r--r--  1 root root   181 2005-10-19 19:59 dbootstrap_settings
-rw-------  1 root root    14 2005-10-23 02:59 dead.letter
drwxr-xr-x  2 root root   112 2005-10-22 03:29 Desktop
-rw-r--r--  1 root root 80857 2005-10-26 23:10 earth.jpg
-rw-r--r--  1 root root  1336 2005-10-19 19:59 install-report.template
lrwxrwxrwx  1 root root     7 2005-10-25 18:39 linux -> /linux/
drwxr-xr-x  3 root root    72 2005-10-22 22:01 vmware
lrwxrwxrwx  1 root root     6 2005-10-25 23:10 wine -> /wine/
[No.382 19:43:30 ~ ]# ls -l | awk '{print $6}'

2005-10-19
2005-10-23
2005-10-22
2005-10-26
2005-10-19
2005-10-25
2005-10-22
2005-10-25


[No.383 19:44:01 ~ ]# ls -l | awk '{print $6}' | while read Time
> do
> echo $Time
> done

2005-10-19
2005-10-23
2005-10-22
2005-10-26
2005-10-19
2005-10-25
2005-10-22
2005-10-25
      
多谢!!
再多问一句,如果我是想从中间的某行开始呢?

比如从
TV Format LIST 8 1 20 20 -- ---- -- 0
开始,到
DIGITAL-TV ENTRY 20 ---- 33554432 --- -- ---- -- 0
截止,应该怎么做呢?      
复制内容到剪贴板
代码:
[No.67 10:39:34 ~ ]# ll | sort +5
total 4
drwxr-xr-x  3 root root  72 [B]2005-10-22[/B] 22:01 vmware
-rw-------  1 root root  14 [B]2005-10-23[/B] 02:59 dead.letter
lrwxrwxrwx  1 root root   7[B] 2005-10-25[/B] 18:39 linux -> /linux/
lrwxrwxrwx  1 root root   6 [B]2005-10-25[/B] 23:10 wine -> /wine/
drwxr-xr-x  2 root root 208 [B]2005-10-29[/B] 23:50 Desktop
[No.68 10:39:58 ~ ]# ll | sort +5  | sed -n '/[B]2005-10-22/,/2005-10-23[/B]/'p
drwxr-xr-x  3 root root  72 2005-10-22 22:01 vmware
-rw-------  1 root root  14 2005-10-23 02:59 dead.letter

[No.69 10:40:06 ~ ]# ll | sort +5  | awk  '/2005-10-22/,/2005-10-23/'
drwxr-xr-x  3 root root  72 2005-10-22 22:01 vmware
-rw-------  1 root root  14 2005-10-23 02:59 dead.letter
用模式匹配      
[url="http://www.linuxeden.com/forum/member.php?u=71729"]li-jiahuan[/url]<SCRIPT type=text/javascript> vbmenu_register("postmenu_499145", true); </SCRIPT> 大大,您能不能写出在shell里怎么写啊。我是刚接触shell编程的新人,没用过awk。

像我说的例子当中,并不知道起始位置和终止位置的值,只知道起始位置和终止位置之前和之后一个位置的值,改如何处理呢?      
awk 是 shell 编程中十分有用的一个工具, 简单的介绍请参阅其 man page

不要总是希望别人就某个具体的问题给出详细的答案, 重要的是解决问题的思想、方法      
呵,如上
楼主还是好好地学一下awk,sed,grep      
两位,我知道你们是什么意思,可是我现在并不是很想仔细学一遍shell编程,现在想做的只是写一个批处理,将一个程序运行结果的一部分作为参数送给另一个程序。

时间不够了,周末前要我的运行结果啊!
不光这个shell,写那两个程序才是我的工作重点啊!