中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何在批处理文件中排版
作者:
标题: [求助]如何在批处理文件中排版 上一主题 | 下一主题
IceCrack
中级用户

DOS之友


积分 332
发帖 168
注册 2005-10-6
来自 天涯
状态 离线
『楼 主』:  [求助]如何在批处理文件中排版

在写一些批处理文件时,不知道怎么处理排版问题。
如运行批处理,怎么样才能使显示的文字居中呢? 不会是计算出来后狂按空格吧
还有就是

                              ╭────────╮
          ╭─────────┤选择要备份的文件├─────────╮
          │                  ╰────────╯                  │
          │                                                        │
          │         本程序能把指定文件在指定时间内备份到指定位     │
          │                                                        │
          │    置。请把要备份的文件(或文件夹)拖曳至本窗口(推荐     │
          │                                                        │
          │    做法),或者手工输入需要备份文件的绝对路径或相对     │
          │                                                        │
          │    路径(请勿输入非法的路径名符号),然后回车确认。      │
          │                                                        │
          │        自动完成文件名请按Tab\Shift+Tab,可多次选择。   │
          │                                                        │
          │        为了不错误删除数据,使用本软件前请阅读注意      │
          │                                                        │
          │    事项!切记切记! (恢复文件请按 R )                  │
          │                                                        │
          ╰────────────────────────────╯
这样类似图形的外框是如何做出来的啊。

2006-7-13 14:39
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (369525996)  编辑帖子  回复  引用回复
electronixtar
铂金会员





积分 7493
发帖 2672
注册 2005-9-2
状态 离线
『第 2 楼』:  

最好按全角的空格,要整齐一点




C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
2006-7-13 15:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
3742668
荣誉版主





积分 2013
发帖 718
注册 2006-2-18
状态 离线
『第 3 楼』:  



  Quote:
不会是计算出来后狂按空格吧

这个应该是最简单的方法。。。
不过,如果想要自己计算,也不是不可以:
@echo off
    echo 输入宽度和高度:
    echo 例如: 3 3
    set /p s=
call :update %s%
pause
goto :eof

:update
setlocal ENABLEDELAYEDEXPANSION

    if %1 geq 40 echo 太宽了! && goto :eof

    rem 以下两句计算每一行前面应该留出的空格数
    set /a began = (40 - %1) / 2
    for /l %%i in (1,1,%began%) do set str=!str! 

    rem 以下两句计算第一行╭与╮之间"─"的数量
    set /a num = %1 - 2
    for /l %%i in (1,1,%num%) do set str1=!str1!─
   
    rem 显示第一行
    echo %str%╭%str1%╮

    rem 保存最后一行
    set str2=%str%╰%str1%╯

    rem 显示除了第一行和最后一行的中间的行
    set str1=%str1:─= %
    for /l %%i in (1,1,%2) do echo %str%│%str1%│

    echo %str2%    & rem 显示最后一行
endlocal
goto :eof


2006-7-13 16:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
IceCrack
中级用户

DOS之友


积分 332
发帖 168
注册 2005-10-6
来自 天涯
状态 离线
『第 4 楼』:  

有没有排版工具呢?  如图形类的。我一般都是把他用AnsiEditor2.03c
那么针对批处理的,或者是dos窗口的应该有一个合适的排版的吧

2006-7-13 22:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (369525996)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: