标题: [文本处理] 【已解决】批处理如何彩色字体高亮显示注释里的几个字 [打印本页]
作者: wwjpl 时间: 2009-5-17 09:05 标题: 【已解决】批处理如何彩色字体高亮显示注释里的几个字
现有一段批处理文件。内容如下:- @echo off
- mode con cols=60 lines=36
- title 兄弟联盟 小工具(为文件夹"加"/"去"隐藏属性)
- color e4
- if /i "%numis%"=="1" goto XDLM
- :XDLM
- echo ------------------------------------------------------------
- echo 说明:此程序可以为文件夹“加”/“去”隐藏属性。
- echo.
- echo 操作:把需要转换属性的文件夹拖拽到光标处,按回车键即可。
- echo.
- echo 注意1:如是多层目录下的文件夹,在拖到光标处后请去除路径两边
- echo 的双引号→"
- echo.
- echo 2:如需为畸形文件夹(带点的文件夹)转换属性,在拖拽到光标
- echo 处后,还要在文件夹名末尾处加个点按回车就可以了。例如:
- echo 在E盘有一个畸形文件夹,名称是“新建文件夹.”,拖拽到
- echo 窗口后显示的是“e:\新建文件夹.”,在文件夹名末尾处加
- echo 个点就变成了“e:\新建文件夹..”按回车OK。
- echo ------------------------------------------------------------
- echo.
- set /p a=请把文件夹拖拽到该窗口:
- echo set DstFolder=%a%>>%temp%\FolderProperty.bat
- echo ^>"%%temp%%\FolderProperty.vbs" echo Set objFSO = CreateObject("Scripting.FileSystemObject").GetFolder(">"%temp%\FolderProperty.bat'>\\?\%%DstFolder%%\")>>"%temp%\FolderProperty.bat"
- echo ^>^>"%%temp%%\FolderProperty.vbs" echo objFSO.Attributes=objFSO.Attributes+2>>"%temp%\FolderProperty.bat"
- echo cscript ^/nologo "%%temp%%\FolderProperty.vbs">>"%temp%\FolderProperty.bat"
- echo del %%0>>"%temp%\FolderProperty.bat"
- call %temp%\FolderProperty.bat
- del %temp%\FolderProperty.vbs
- cls
- set /p var=任务已完成,继续请按“1”回车 退出请按“9”回车
- cls
- if "%var%" == "1" goto XDLM
- exit
- pause>nul
- exit
复制代码
申明:本人菜鸟,以上大部分代码都是抄袭论坛巡查“Batcher”的,我只做了一些小的修改。
问题:如何高亮显示代码中的汉字“e:\新建文件夹.”和“e:\新建文件夹..”。高亮显示是为了,让使用者能够重视。
希望论坛的高手帮忙解决,在此谢过!!!
应巡查大人的提示,清除了多余的“@”符号
[ 本帖最后由 wwjpl 于 2009-5-23 12:08 编辑 ]
作者: Batcher 时间: 2009-5-17 09:30
建议除了第一行之外,其它的@全部删除。
作者: defanive 时间: 2009-5-17 09:38
高亮注释请参考echox和findstr /a的用法(也可以下载colr)
作者: wwjpl 时间: 2009-5-17 10:18 标题: 回复 2楼 的帖子
我的“@”符号确实是多了,不过本人对批处理确实是菜,尽干一些画蛇添足的事,不好意思:)
作者: wwjpl 时间: 2009-5-17 10:58 标题: 回复 3楼 的帖子
我在网上查了一下,好像echox是第三方工具(不知道我查的对不对),我希望只使用批命令,不知能实现否,如果不能实现就算了。
还是谢谢两位高手给予的指导。
作者: Batcher 时间: 2009-5-17 11:54 标题: 回复 5楼 的帖子
可以用findstr命令,你先自己尝试一下吧。
作者: wwjpl 时间: 2009-5-18 10:32 标题: 回复 6楼 的帖子
我知道,你其实完全可以把答案写出来告诉我,但你却叫我看参考,是想提高我的批能力,用心良苦,我意会心领了,在此非常感谢你对我的好心帮助以及“defanive”对我的提点。
无赖俗人俗事太多,(明天又要出差了)实在无时间,此问题暂时搁置收藏吧,(也怪我批能力太差:))以后有时间再慢慢研究,再次感谢!!!
作者: Batcher 时间: 2009-5-18 11:02 标题: 回复 7楼 的帖子
如果你通过研究仍然搞不定,再回来提问,我非常乐意帮你写代码。
作者: wwjpl 时间: 2009-5-22 12:06 标题: 回复 8楼 的帖子
- @echo off
- chcp 437>nul&&graftabl 936>nul
- if not exist CONFIG.NT copy %WinDir%\System32\CONFIG.NT %temp%\CONFIG.NT>nul
- command /cecho
- command /cecho [1;33m我爱我家[31m我爱[35m批处理
- copy %temp%\CONFIG.NT %WinDir%\System32\CONFIG.NT>nul
- del "%temp%\CONFIG.NT"
- pause>nul
复制代码
Batcher老师你好,我只能用第三方程序表达我的意思,(还是抄袭了别人的批文件之后修改了一下,不过也学到了东西。)至于“findstr /a”命令我还是用的不好,希望你在有时间的时候写个例子,让我参考学习,谢谢!!!
以下是我的“findstr /a”的用法,望指导。- @echo off
- set/p=<nul&echo.>我爱我家&findstr /a:0e .* 我爱我家*&del 我爱我家*
- set/p=<nul&echo.>我爱批处理&findstr /a:0d .* 我爱批处理*
- del 我爱批处理*
- pause>nul
复制代码
[ 本帖最后由 wwjpl 于 2009-5-22 12:09 编辑 ]
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |