中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-25 06:29
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 能否做到跟据变量中数字的改变而自动调整显示? 查看 816 回复 9
楼 主 能否做到跟据变量中数字的改变而自动调整显示? 发表于 2008-09-10 18:04 ·  中国 广东 江门 电信
中级用户
★★
积分 338
发帖 175
注册 2007-10-21 15:30
18年会员
UID 100351
性别 男
状态 离线

echo 时间 人物 地点 做什么
echo. %s1% %k1% %b1% %x1%
echo. %s2% %k2% %b2% %x2%
echo. %s3% %k3% %b3% %x3%
echo. %s4% %k4% %b4% %x4%
echo. %s5% %k5% %b5% %x5%
echo. %s6% %k6% %b6% %x6%
echo. %s7% %k7% %b7% %x7%
echo. %s8% %k8% %b8% %x8%


echo这些变量的时候能否做到表格随着变量字数的改变而自动调整?(类似于自动对齐)

我想能不能通过获取最长的变量字数,然后在echo后补上空格令其对齐?

谢.
2 发表于 2008-09-10 19:27 ·  中国 广东 江门 电信
中级用户
★★
积分 338
发帖 175
注册 2007-10-21 15:30
18年会员
UID 100351
性别 男
状态 离线
没人鸟我
3 发表于 2008-09-10 19:40 ·  中国 江苏 苏州 中移铁通
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
就按照你说的就可以了,不过要计算这么多变量中哪个值的长度最大不是一件容易的事情
4 发表于 2008-09-10 19:42 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
是否是这样:
@echo off
set "space= "
for /l %%a in (1 1 8) do (
for %%i in (s k b x) do (
call set "%%i%%a=%%random%%%space%"
set/p=%%%%i%%a%%: <nul
call set /p=%%%%i%%a:~,10%%<nul
)
echo.
)
pause
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
5 发表于 2008-09-10 19:51 ·  中国 江苏 苏州 中移铁通
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
随机变量的长度不超过6位,所以楼上这样计算不符合楼主的意思吧
6 发表于 2008-09-10 20:06 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
我只是举一个例子而已,看楼主上面的写的“时间、人物、地点、做什么”就能想象变量的值不只是一两个字符那么简单。
真正用到的话,同你的思路一样,先找出最长的值n,然后填充n+1个空格,其他同是。
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
7 发表于 2008-09-10 20:07 ·  中国 广东 江门 电信
中级用户
★★
积分 338
发帖 175
注册 2007-10-21 15:30
18年会员
UID 100351
性别 男
状态 离线
Originally posted by huahua0919 at 2008-9-10 07:40 PM:
就按照你说的就可以了,不过要计算这么多变量中哪个值的长度最大不是一件容易的事情

就是这个原因...
先试试那个方法先...
8 发表于 2008-09-10 20:09 ·  中国 广东 江门 电信
中级用户
★★
积分 338
发帖 175
注册 2007-10-21 15:30
18年会员
UID 100351
性别 男
状态 离线
Originally posted by pusofalse at 2008-9-10 08:06 PM:
我只是举一个例子而已,看楼主上面的写的“时间、人物、地点、做什么”就能想象变量的值不只是一两个字符那么简单。
真正用到的话,同你的思路一样,先找出最长的值n,然后填充n+1个空格,其他同是。


话说这个可能行,因为我的变量是先前设置好的...

但是如果能做到自动获取就更好了...
9 发表于 2008-09-10 21:13 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
多加几个TAB
S smile 微笑,L love 爱,O optimism 乐观,R relax 放松,E enthusiasm 热情...Slore
10 发表于 2008-09-10 21:14 ·  中国 广东 江门 电信
中级用户
★★
积分 338
发帖 175
注册 2007-10-21 15:30
18年会员
UID 100351
性别 男
状态 离线
Originally posted by slore at 2008-9-10 09:13 PM:
多加几个TAB



试试先...还可以哦...

[ Last edited by BC on 2008-9-10 at 09:16 PM ]
论坛跳转: