楼 主
[已结]如何把dir的结果分页显示出来?
发表于 2009-02-10 17:02 · 埃塞俄比亚
新手上路
★
积分 14 发帖 14 注册 2009-02-09 15:18 17年会员 UID 138402 性别 男
状态 离线
昨天注册的号,今天终于能发帖了,在不能发帖的时间也搜索了好多帖子,解决了很多问题,在此多谢各位前辈高人了。但是还有个问题却没找到答案:
如题
for /f "tokens=*" %%a in ('dir /b *.txt') do echo 日记名称:%%~na
我使用如上命令将该目录下的txt文件名显示出来,现请教一下:
1.能否让一行显示多个结果且能对齐?
2.如果txt文件太多的话能否分页显示,每次显示一定的条数后就暂停?
[
Last edited by HAT on 2009-2-12 at 03:06 ]
第 2 楼
发表于 2009-02-10 17:15 · 埃塞俄比亚
新手上路
★
积分 14 发帖 14 注册 2009-02-09 15:18 17年会员 UID 138402 性别 男
状态 离线
set num=1
for /f "tokens=*" %%a in ('dir /b *.txt') do (
echo 日记名称:%%~na
set /a num=%num%+1
echo %num%
if num==5 pause>nul
)
刚试了下这个,还是不行,echo %num%出来的结果总是1,请教下高手,这是什么原因?
第 3 楼
发表于 2009-02-10 17:31 · 中国 北京 鹏博士长城宽带
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488 发帖 1,357 注册 2006-05-20 12:00 20年会员 UID 55770
状态 离线
dir /w /p /a:-d *.txt
有问题请发论坛或者自行搜索,再短消息问我的统统是SB
第 4 楼
发表于 2009-02-10 17:32 · 中国 北京 鹏博士长城宽带
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488 发帖 1,357 注册 2006-05-20 12:00 20年会员 UID 55770
状态 离线
dir /d /p /a:-d *.txt
有问题请发论坛或者自行搜索,再短消息问我的统统是SB
第 5 楼
发表于 2009-02-10 17:38 · 中国 湖北 荆门 电信
初级用户
★★
积分 186 发帖 117 注册 2006-08-14 14:50 19年会员 UID 60491
状态 离线
第 6 楼
发表于 2009-02-10 18:33 · 埃塞俄比亚
新手上路
★
积分 14 发帖 14 注册 2009-02-09 15:18 17年会员 UID 138402 性别 男
状态 离线
第 7 楼
发表于 2009-02-10 18:40 · 美国 华盛顿州 金 雷德蒙德 Microsoft
初级用户
★★
积分 100 发帖 93 注册 2009-01-14 15:04 17年会员 UID 136661 性别 男 来自 湖南
状态 离线
第 8 楼
发表于 2009-02-10 18:49 · 埃塞俄比亚
新手上路
★
积分 14 发帖 14 注册 2009-02-09 15:18 17年会员 UID 138402 性别 男
状态 离线
我用了setlocal enabledelayedexpansion还是不行哇。num的值还是没变。
第 9 楼
发表于 2009-02-10 22:12 · 中国 广东 东莞 电信
银牌会员
★★★
批处理编程迷
积分 1,916 发帖 752 注册 2008-12-28 04:30 17年会员 UID 135147 性别 男 来自 广西
状态 离线
每行显示三个,20行pause
echo off&setlocal enabledelayedexpansion
set num=1
for /f "tokens=*" %%a in ('dir /b *.txt') do (
set /a num+=1,next=num%%3
if !next!==0 echo.&set /p= !num! <nul
set /p= 日记名称:%%~na <nul
if num==60 pause>nul
)
[ Last edited by netbenton on 2009-2-10 at 20:14 ]
第 10 楼
发表于 2009-02-10 22:31 · 中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310 发帖 2,044 注册 2005-09-26 12:00 20年会员 UID 42843 性别 男 来自 四川南充
状态 离线
楼上的if num==60 pause>nul
可能会错错吧?
应该改为
if !num!==60 pause>nul
第 11 楼
:lol: :p
发表于 2009-02-10 22:35 · 中国 广东 东莞 电信
银牌会员
★★★
批处理编程迷
积分 1,916 发帖 752 注册 2008-12-28 04:30 17年会员 UID 135147 性别 男 来自 广西
状态 离线
是呀,搞错了
不好意思,还没试过呢
第 12 楼
发表于 2009-02-10 23:03 · 中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488 发帖 1,357 注册 2006-05-20 12:00 20年会员 UID 55770
状态 离线
setlocal enabledelayedexpansion
set num=1
for /f "tokens=*" %%a in ('dir /b *.txt') do (
echo 日记名称:%%~na
set /a num=!num!+1
echo !num!
if !num! equ 5 pause>nul
)
pause
有问题请发论坛或者自行搜索,再短消息问我的统统是SB
第 13 楼
发表于 2009-02-12 01:45 · 埃塞俄比亚
新手上路
★
积分 14 发帖 14 注册 2009-02-09 15:18 17年会员 UID 138402 性别 男
状态 离线
多谢各位了。忙了两天,今天晚上住的地方也能上网了,开心得一B,急忙上来看看。试下楼上几位大侠提供的方法先。
第 14 楼
发表于 2009-02-12 02:02 · 埃塞俄比亚
新手上路
★
积分 14 发帖 14 注册 2009-02-09 15:18 17年会员 UID 138402 性别 男
状态 离线
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正