一、 改变cmd窗口当前目录——资源管理器或cd
具体方法详见我的专栏中另一篇文章的章节1.5。
二、 改变CMD窗口标题——title
默认cmd窗口标题如下
如果想要更改,可以使用title xxx命令
三、设置窗口的大小——GUI界面或mode
cmd窗口一打开,默认就有上千行,因此非常不便于进行代码的定位。
有两种方式可以对其修改。
方式一:在GUI界面中修改
首先单击左上角的图标,然后进入属性页面。
布局选项卡——调整缓冲区宽度和高度的数值,一般来说高度设置成50即可满足日常需求。高度也别设太小,不然缓冲区不够,会发生指令和执行记录、执行结果覆盖问题。
千万要记住一点!上面在属性页面设置的参数只是针对当前cmd窗口,如果想要以后创建的cmd窗口都沿用此设置,就需要进入默认页面。
方法二:通过mode命令进行修改
先用mode命令查看目前cmd窗口的显示大小等信息。行的高度是50,达到了我们的预期。
再用mode /?命令显示帮助信息。
在帮助信息中,我们可以发现显示模式这一行,先列后行。我们不妨尝试一下将列数改成80,行数改成更小的40。
显示模式一更改,cmd窗口的所有历史执行记录也会被清空
进入属性页面查看是否更改成功,发现数值都对上号了!
四、设置窗口的颜色——color
先用color /?打印帮助信息。
帮助信息很明确了,两个参数,前一个是背景,后一个是前景 。
比如color fc命令的执行效果如下。
如果不带任何参数,也即指令是color,那么就会得到默认颜色效果。
五、暂停再继续/延时/保留cmd窗口——pause
之所以叫它暂停继续指令,是因为本质上pause指令就是一种断点,程序执行到存在pause的行就会中断/暂停,等待键盘输入任意值后才继续执行下面的命令行。
5.1 打印与pause相关的帮助信息——pause /?
如下图所示,帮助信息很少,并且没有参数可言,说明用法非常固定。
5.2 保留默认的提示信息——pause
如果在一行中仅仅包括pause,那么最后执行到相应行时就会显示“请按任意键继续”(依据字符编码的不同,也可以是“Press any key to continue . . .”)的提示信息。
5.3 pause>nul:如果在pause后加重定向至nul文件(也即空文件),那么最后pause指令输出的提示信息就不会被显示在屏幕上,而是消失不见了,显示的是一个空行。
5.4 修改中断提示信息——echo和pause搭配
如果不想要在中断处显示“请按任意键继续”(依据字符编码的不同,也可以是“Press any key to continue . . .”)的提示信息,可以结合echo指令进行修改。
如下图所示,通过在pause指令行前加一个echo xxx的指令(xxx为修改后的提示信息),并且pause搭配重定向至空文件的pause>nul,就可以实现看起来的中断提示信息更改啦!
如果你学过操作符【&】,那么其实也可以用【echo 修改后提示信息 & pause>nul】来替代上面的两行。
5.5 pause用于避免瞬间关闭cmd窗口
什么叫保留cmd窗口呢?如果你是新建一个cmd窗口再往里面写命令,就不存在这个需要。
但是如果你是在bat批处理文件中写好dos命令,然后执行bat文件,一般来说就需要保留cmd窗口了。
因为批处理文件中的所有命令执行完毕后会自动执行exit退出指令,直观上呈现的是窗口的一闪而过,可能你执行没执行这个文件(或执行过程是否有错误)你都不是很清楚。
所以,为了让窗口不一闪而过,保留执行的结果记录,我们就需要用到pause命令。
例如下面的代码块对应某bat文件,如果删掉最后一行,echo的语句显示的结果是无法直观地显现出来的。
chcp 65001
@echo off
echo 小大人,您玩累了吗?
echo ......
echo ......
echo ......
echo 过了十分钟后...
echo 现在按任意键即可继续玩耍啦
pause
六、修改cmd窗口的字体显示编码
部分字符编码对应代码(参考来源)
65001——UTF-8
936——简体中文
950——繁体中文
437——美国/加拿大英语
932——日文
949——韩文
866——俄文
windows 命令行CMD 默认的编码格式是 gbk 编码格式(codepage编码表编号:cp936)。 但对于某些情况下gbk解码会产生乱码,希望将CMD的编码格式修改成英文或者utf-8格式。
- chcp /?:显示 chcp命令相关帮助信息
- chcp:显示当前活动代码页编号,执行可以发现cmd窗口的默认编码是GBK,也即codepage=936的情况
- chcp xxxx :更改字符编码为xxxx。
一执行上图的chcp xxxx指令,cmd的所有历史执行记录就会被自动清空。
由于现在最通用的字符编码是utf8,所以一般默认的gbk出中文乱码问题时,就要用到指令【chcp 65001】。
七、关闭cmd窗口、退出cmd环境(exit、exit /b、goto :eof)
由于该部分涉及到的内容实在太多,因此我不得不重开一篇文章专门讲它,诸位请翻我的cmd dos专栏。