Board logo

标题: 用批处理方便的阅读文档 [打印本页]

作者: 26933062     时间: 2007-1-9 15:59    标题: 用批处理方便的阅读文档

最近学批处理,在abc文件夹中保存了n个文档,都是以序号加文件名命的名.如(1)ad.txt (2)hh.txt  (3)sldkjf.txt (4)kk.txt ......................等等 发现阅读时很不方便,现有一想法,不知道能否实现
要求:
1. 运行a.bat就可显示abc中的所有txt文件名
2. 按相应的序号就可以打开对应的文件.(如 按1就打开(1)ad.txt文件 按3就打开
   (3)sldkjf.txt文件............关闭当前文件后,又回到第一步)
3. 不知能否实现???[/
size]

[ Last edited by 26933062 on 2007-1-9 at 03:00 AM ]
作者: jmz573515     时间: 2007-1-10 02:36
楼主的想法很好,顶

[ Last edited by jmz573515 on 2007-1-22 at 10:18 PM ]
作者: 9527     时间: 2007-1-10 03:09
其实你的题目论坛里是有的,RedTek兄的方案,注意:文件最开始的数字不能有重复的,否则出错
@echo off&setlocal
for %%a in (*.txt) do call :pp "%%a"
dir /b *.txt
:loop
set/p a=Enter Number(E=exit):
if /i %a% equ e goto :eof
call %%[%a%]%%
goto loop
:pp
for /f "delims=()" %%x in (%1) do set [%%x]=%1
goto :eof

作者: tghksj     时间: 2007-1-10 04:13
这个很简单,找到---打开 OK了
@ECHO %dbg% OFF
setlocal ENABLEDELAYEDEXPANSION

:OPEN
SET /P NO=输入要打开的文档序号:(输入E退出程序)
IF /I %NO%==E EXIT
FOR /F "tokens=*" %%I IN ('dir /b ^(!NO!^)*.txt') DO "%%I"
GOTO :OPEN
[ Last edited by tghksj on 2007-1-9 at 03:17 PM ]
作者: 9527     时间: 2007-1-10 04:28
楼上代码不错,稍微修改了一下,呵呵
@echo off&setlocal
:OPEN
cls
dir/b *.txt
SET /P NO=输入要打开的文档序号:(输入E退出程序)
IF /I %NO%==E (goto :eof)
FOR /F "tokens=*" %%I IN ('dir /b ^(%NO%^)*.txt') DO notepad "%%I"
GOTO :OPEN

作者: 26933062     时间: 2007-1-10 08:11

作者: minmin888     时间: 2007-5-8 14:46
学习之!