|
lucifer
初级用户
 
积分 124
发帖 1
注册 2003-6-14
状态 离线
|
『楼 主』:
[请版主回答] 这一行命令怎么创建了一个空文件?
set d="echo a.txt > b.txt" & copy %d% > 1.txt & type 1.txt | find /i "echo" > b.txt
还有这一个,和上面的效果一样
prompt echo$Sb.txt$S$Gc.txt& echo z|cmd|findstr /e "t">b.txt
[此贴子已经被作者于2003-7-1 15:21:30编辑过]
|
|
2003-6-30 00:00 |
|
|
ko20010214
版主
       
积分 7294
发帖 1628
注册 2002-10-16
状态 离线
|
『第
2 楼』:
这里牵涉到 DOS环境下变量的设置(set命令),管道符命令(>和| 命令)的知识 。
下面那个牵涉到 DOS下的显示命令(echo命令),提示符命令(prompt命令),新的DOS环境命令(cmd命令,而且这是win2000下的command命令)。查找字符串命令(findstr命令,应该是个外部命令吧?) 的知识。
请分别去看这些命令的用法(包括一些特殊用法)。理解了之后再来想想这个复杂的复合命令吧。
|

ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
|
|
2003-7-4 00:00 |
|
|
dv人
初级用户
  你说呢
积分 281
发帖 35
注册 2003-6-23
状态 离线
|
『第
3 楼』:
findstr ???????????应该市find命令吧格式:find "string" /?
|

dv人-----------------------------呀 |
|
2003-7-9 00:00 |
|
|
ko20010214
版主
       
积分 7294
发帖 1628
注册 2002-10-16
状态 离线
|
『第
4 楼』:
以下是引用dv人在2003-7-9 1:38:48的发言:
findstr ???????????应该市find命令吧格式:find "string" /? 也许吧。可能是你说得对。我也不知道楼主讲的东东。我是瞎猜的。呵呵。。。
|

ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
|
|
2003-7-9 00:00 |
|
|
Roy
管理员
          專業島民
积分 4869
发帖 1633
注册 2002-12-10
状态 离线
|
『第
5 楼』:
以下是引用dv人在2003-7-9 1:38:48的发言:
findstr ???????????应该市find命令吧格式:find "string" /? 不是吧.........findstr是Win2000/XP的指令呢........
|

|
|
2003-7-9 00:00 |
|
|
dv人
初级用户
  你说呢
积分 281
发帖 35
注册 2003-6-23
状态 离线
|
『第
6 楼』:
是我记错了,,,有find和findstr,,,还是findstr用途更广,,,献丑了
-----------使用文字文本或常规表达式搜索文件中的字符串。单击“相关主题”列表中的“Devinfo 说明”以获得 findstr 接受的常规表达式符号列表。
findstr [/e] [/l] [/c:string] [/r] [/s] [/x] [/v] [/n] [/m] [/o] [/g:file] [/f:file] [/d:dirlist] [/a:color attribute] [strings] [[drive:][path] filename [...]]
参数
/b
如果位于行的开头则匹配模式。
/e
如果位于行的末尾则匹配模式。
/l
使用文字搜索字符串。
/c: string
使用指定的文本作为文字搜索字符串。
/r
使用搜索串作为常规表达式。不需要该开关,除非使用 /l 开关,否则 findstr 将所有的元字符当作常规表达式解释。
/s
在当前目录和所有子目录中搜索匹配的文件。
/i
指定搜索不区分大小写。
/x
打印完全匹配的行。
/v
只打印不包含匹配的行。
/n
在每个匹配的行之前打印行号。
/m
如果文件包含匹配项,仅打印该文件名。
/o
在每次匹配行之前打印查找偏移量。
/g filename
从指定文件得到搜索字符串。
/f file
从指定文件中读取文件列表。
/d dirlist
搜索以逗号分隔的目录列表。
|

dv人-----------------------------呀 |
|
2003-7-9 00:00 |
|
|
buddiyar
初级用户
 
积分 160
发帖 75
注册 2006-6-28
状态 离线
|
『第
7 楼』:
set d="echo a.txt > b.txt"
此时b.txt的内容为 a.txt
& copy %d% > 1.txt
copy %d% 为1.txt
& type 1.txt | find /i "echo" > b.txt
在1.txt中查找echo字符串 有则写如b.txt
无则为空
不过注意 此处用的是>
那么不论有1.txt里含有多少个echo
b.txt的内容也只会是一个echo而已
还有这一个,和上面的效果一样
prompt echo$Sb.txt$S$Gc.txt& echo z|cmd|findstr /e "t">b.txt
|
|
2006-7-16 13:38 |
|
|
IceCrack
中级用户
   DOS之友
积分 332
发帖 168
注册 2005-10-6 来自 天涯
状态 离线
|
『第
8 楼』:
set d="echo a.txt>b.txt"
echo %d%>1.txt
type 1.txt | find /i "echo">b.txt
为什么有一个&和没有一个&差别这么大呢? &不就起一个连接作用嘛.我感觉这个应该和楼主的效果一样的.但是实际上效果大不相同
|
|
2006-7-16 19:49 |
|