提取文件中格式类似的字符,这些文件并不在同一个目录
先说明一下:
需要提取内容的文件,分布在不同的文件夹内.并且所在的文件夹层次也不一样. 同时还要在输出的内容后面追加该文件的路径
这是文件夹结构:
C:\SRS-DRV
├─3
│ ├─1
│ │ └─O
│ ├─2
│ └─3
├─A
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ ├─7
│ └─8
├─AD
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ │ └─C
│ ├─7
│ ├─8
│ ├─9
│ └─A
├─AM
├─AR
├─AT
├─AU
│ ├─1
│ ├─2
│ └─3
├─C
├─D
│ ├─1
│ ├─2
│ └─3
├─E
├─H
│ ├─1
│ │ └─R
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ │ └─2k3
│ ├─7
│ └─8
├─I
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ └─6
├─IN
│ ├─1
│ │ └─O
│ └─2
│ └─winnt
│ └─x86
├─IT
├─J
│ ├─1
│ └─2
├─L
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ └─5
├─M
│ └─O
├─N
│ ├─123
│ ├─4
│ │ ├─I
│ │ └─R
│ ├─4INTEL
│ │ ├─I
│ │ └─R
│ ├─590SLI
│ │ ├─I
│ │ └─R
│ └─TM
├─P
│ ├─1
│ ├─2
│ │ └─A
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ ├─7
│ ├─8
│ └─9
├─Q
│ ├─1
│ ├─2
│ ├─3
│ └─4
├─S
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ │ └─A
│ ├─6
│ ├─7
│ │ └─A
│ ├─8
│ ├─9
│ ├─A
│ ├─B
│ └─C
├─SI
│ ├─1
│ ├─2
│ └─3
├─V
│ ├─1
│ ├─2
│ └─3
└─VM
基本上每个文件夹下面都有一个扩展名为.INF的文件,如果那个INF文件中有和下面红色部分类似的内容就将它输出到1.TXT中(有的文件里有多行这样的,要全部都输出),并且将该文件的路径追加到输出文本的后面。(如果某个文件中有多处符合条件的,就全部输出,并且在每一行后面添加该文件的路径,例如后面几行蓝色的)
例如:
PCI\VEN_13C1&DEV_1000=C:\SRS-DRV\3\3\oemsetup3.inf
PCI\VEN_1191&DEV_0002&SUBSYS_00021191=C:\SRS-DRV\A\1\Aec6210.inf
PCI\VEN_1191&DEV_0006&SUBSYS_00061191&REV_01=C:\SRS-DRV\A\2\Aec6260.inf
PCI\VEN_1022&DEV_7409=C:\SRS-DRV\AM\AMDEIDE.inf
PCI\VEN_1022&DEV_7411=C:\SRS-DRV\AM\AMDEIDE.inf
PCI\VEN_1022&DEV_7441=C:\SRS-DRV\AM\AMDEIDE.inf
PCI\VEN_1022&DEV_7469=C:\SRS-DRV\AM\AMDEIDE.inf
前面的部分是从文件里面提出来的,等号后面是提取内容的文件的路径.
要提取的内容有几个相似的特点:
1 都是以PCI\VEN开头.(注意:这里是指我要提取的内容是以PCI\VEN开头,并非该内容所在的行是PCI\VEN开头.只需要PCI\VEN之间包含一个"\"的内容,超过一个"\"以上的都不是需要的)
2 内容中有两种分隔符"_"和"&",并且分隔符的数量不一样.
下面的链接页面的文件,是上面制作1.TXT文件用到的,上面的目录树结构就是该链接文件的.
http://driverpacks.net/DriverPacks/download.php?pag=m
所用到的文件上面链接页面有下载,我的等级太低了,现在好像还无法上传附件!
在这里先感谢各位大侠们了.
希望用批处理实现上面功能的初衷:
引用文章原贴地址http://bbs.mscode.cc/thread-51438-1-2.html
[ Last edited by baikaifang on 2007-6-3 at 08:04 PM ]
先说明一下:
需要提取内容的文件,分布在不同的文件夹内.并且所在的文件夹层次也不一样. 同时还要在输出的内容后面追加该文件的路径
这是文件夹结构:
C:\SRS-DRV
├─3
│ ├─1
│ │ └─O
│ ├─2
│ └─3
├─A
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ ├─7
│ └─8
├─AD
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ │ └─C
│ ├─7
│ ├─8
│ ├─9
│ └─A
├─AM
├─AR
├─AT
├─AU
│ ├─1
│ ├─2
│ └─3
├─C
├─D
│ ├─1
│ ├─2
│ └─3
├─E
├─H
│ ├─1
│ │ └─R
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ │ └─2k3
│ ├─7
│ └─8
├─I
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ └─6
├─IN
│ ├─1
│ │ └─O
│ └─2
│ └─winnt
│ └─x86
├─IT
├─J
│ ├─1
│ └─2
├─L
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ └─5
├─M
│ └─O
├─N
│ ├─123
│ ├─4
│ │ ├─I
│ │ └─R
│ ├─4INTEL
│ │ ├─I
│ │ └─R
│ ├─590SLI
│ │ ├─I
│ │ └─R
│ └─TM
├─P
│ ├─1
│ ├─2
│ │ └─A
│ ├─3
│ ├─4
│ ├─5
│ ├─6
│ ├─7
│ ├─8
│ └─9
├─Q
│ ├─1
│ ├─2
│ ├─3
│ └─4
├─S
│ ├─1
│ ├─2
│ ├─3
│ ├─4
│ ├─5
│ │ └─A
│ ├─6
│ ├─7
│ │ └─A
│ ├─8
│ ├─9
│ ├─A
│ ├─B
│ └─C
├─SI
│ ├─1
│ ├─2
│ └─3
├─V
│ ├─1
│ ├─2
│ └─3
└─VM
基本上每个文件夹下面都有一个扩展名为.INF的文件,如果那个INF文件中有和下面红色部分类似的内容就将它输出到1.TXT中(有的文件里有多行这样的,要全部都输出),并且将该文件的路径追加到输出文本的后面。(如果某个文件中有多处符合条件的,就全部输出,并且在每一行后面添加该文件的路径,例如后面几行蓝色的)
例如:
PCI\VEN_13C1&DEV_1000=C:\SRS-DRV\3\3\oemsetup3.inf
PCI\VEN_1191&DEV_0002&SUBSYS_00021191=C:\SRS-DRV\A\1\Aec6210.inf
PCI\VEN_1191&DEV_0006&SUBSYS_00061191&REV_01=C:\SRS-DRV\A\2\Aec6260.inf
PCI\VEN_1022&DEV_7409=C:\SRS-DRV\AM\AMDEIDE.inf
PCI\VEN_1022&DEV_7411=C:\SRS-DRV\AM\AMDEIDE.inf
PCI\VEN_1022&DEV_7441=C:\SRS-DRV\AM\AMDEIDE.inf
PCI\VEN_1022&DEV_7469=C:\SRS-DRV\AM\AMDEIDE.inf
前面的部分是从文件里面提出来的,等号后面是提取内容的文件的路径.
要提取的内容有几个相似的特点:
1 都是以PCI\VEN开头.(注意:这里是指我要提取的内容是以PCI\VEN开头,并非该内容所在的行是PCI\VEN开头.只需要PCI\VEN之间包含一个"\"的内容,超过一个"\"以上的都不是需要的)
2 内容中有两种分隔符"_"和"&",并且分隔符的数量不一样.
下面的链接页面的文件,是上面制作1.TXT文件用到的,上面的目录树结构就是该链接文件的.
http://driverpacks.net/DriverPacks/download.php?pag=m
所用到的文件上面链接页面有下载,我的等级太低了,现在好像还无法上传附件!
在这里先感谢各位大侠们了.
希望用批处理实现上面功能的初衷:
原帖引用之龙帝国论坛 由 eyeshare 于 07-5-3 11:07 发表
封装前加载sata raid scsi 驱动的心得,可以不用不改的srs
做ghost系统我觉得最重要的就是电源模式的判断和准确加载srs 驱动,现在电源模式的判断已经有了很好的解决办法,现在最主要的问题就在于srs 的驱动怎样在封装前加载,和最小化安装的时候卸载多余的驱动,加快系统启动速度。其实参考微软的部署文档就可以了。下面我来说说我的方法(封装前其他的步骤我就不多说了 如:更改电源模式等)
1,收集需要的srs驱动,可以直接下载dps 的massstorage 驱动。
http://www.driverpacks.net/DriverPacks/download.php?pag=m
2,解压驱动到c:\drivers 。
3,编辑sysprep.ini 加入以下内容
InstallFilesPath=C:\sysprep\i386
PCI\VEN_1022&DEV_7469=c:\drivers\m\am\AMDEIDE.inf
PCI\VEN_1002&DEV_4349=c:\drivers\m\at\atiide.inf
PCI\VEN_10B9&DEV_5215=c:\drivers\m\au\1\ALIIDE.INF
PCI\VEN_10B9&DEV_5219=c:\drivers\m\au\1\ALIIDE.INF
PCI\VEN_10B9&DEV_5229=c:\drivers\m\au\1\ALIIDE.INF
PCI\VEN_10B9&DEV_5228=c:\drivers\m\au\2\m5228.INF
PCI\VEN_10B9&DEV_5281=c:\drivers\m\au\2\m5281.inf
PCI\VEN_10B9&DEV_5287=c:\drivers\m\au\3\ulisata.inf
PCI\VEN_10B9&DEV_5288=c:\drivers\m\au\4\ULISATA.INF
PCI\VEN_10B9&DEV_5289=c:\drivers\m\au\5\ULISATA.INF
PCI\VEN_8086&DEV_2652&CC_0104=c:\drivers\m\in\1\iastor.inf
PCI\VEN_8086&DEV_27C3&CC_0104=c:\drivers\m\in\1\iastor.inf
PCI\VEN_8086&DEV_2682&CC_0104=c:\drivers\m\in\1\iastor.inf
PCI\VEN_8086&DEV_27C6&CC_0104=c:\drivers\m\in\1\iastor.inf
PCI\VEN_8086&DEV_2822&CC_0104=c:\drivers\m\in\1\iastor.inf
PCI\VEN_8086&DEV_2652&CC_0106=c:\drivers\m\in\1\iaahci.inf
PCI\VEN_8086&DEV_2653&CC_0106=c:\drivers\m\in\1\iaahci.inf
PCI\VEN_8086&DEV_27C1&CC_0106=c:\drivers\m\in\1\iaahci.inf
PCI\VEN_8086&DEV_27C5&CC_0106=c:\drivers\m\in\1\iaahci.inf
PCI\VEN_8086&DEV_2681&CC_0106=c:\drivers\m\in\1\iaahci.inf
PCI\VEN_8086&DEV_2821&CC_0106=c:\drivers\m\in\1\iaahci.inf
PCI\VEN_8086&DEV_24DF&CC_0104=c:\drivers\m\in\1\O\iastor.inf
PCI\VEN_8086&DEV_25B0&CC_0104=c:\drivers\m\in\1\O\iastor.inf
PCI\VEN_10DE&DEV_008E=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_00D5=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_00EE=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_00E3=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_0036=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_003E=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_0054=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_0055=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_0266=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_0267=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_036F=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_037E=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_037F=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_03F6=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_03F7=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_10DE&DEV_03E7=c:\drivers\m\N\TM\nvatabus.inf
PCI\VEN_1039&DEV_0181=c:\drivers\M\SI\1\SISRaid1.INF
PCI\VEN_1039&DEV_0180=c:\drivers\M\SI\2\SISRaid.INF
PCI\VEN_1039&DEV_0182=c:\drivers\M\SI\3\SISRaid2.INF
PCI\VEN_1106&DEV_3349&CC_0104=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_6287&CC_0106=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_0591&CC_0104=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_3249&CC_0104=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_3149&CC_0104=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_3164&CC_0104=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_0581&CC_0104=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_7372&CC_0104=c:\drivers\M\V\1\VIAMRAID.INF
PCI\VEN_1106&DEV_4149=c:\drivers\M\V\2\viapide.inf
PCI\VEN_1106&DEV_0571=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_3149&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_0591&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_5337&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_3349&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_5287&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_3164&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_0581&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_1106&DEV_5324&CC_0101=c:\drivers\M\V\3\vminiide.inf
PCI\VEN_104B&DEV_1040=c:\drivers\M\VM\vmscsi.inf
这个是我加载的驱动 包括nforece intel via sis ali amd 的sata驱动,如果还需要加载其他驱动可以参考驱动包内的 DriverPack_MassStorage_wnt5_x86-32.ini 文件。
4,在c:\sysprep 目录下建立 i386\$oem$目录 ,在c:\sysprep\i386\$oem$ 中建立cmdlines.txt 文件,在文件中加入
"c:\sysprep\sysprep -clean"
这样就会在最小化安装的过程中禁用所有因为在目标计算机上不存在而未安装的大量存储控制器。
5,最后执行sysprep进行封装,在封装的过程中,系统会自动安装 srs驱动。在最小化安装的时候会删除多余的驱动。
这样做的好处是自己可以控制加载的驱动更符合自己的需要,坏处就是需要手动添加比较麻烦。
引用文章原贴地址http://bbs.mscode.cc/thread-51438-1-2.html
[ Last edited by baikaifang on 2007-6-3 at 08:04 PM ]
