发布时间:2017-06-08 11:14:37作者:知识屋
怎么用批处理文件写一个文本文档 txt文档和bat批处理文件技巧 你是否有曾经想象过自己成为一名IT精英,畅游代码的海洋,每天解读着别人所不能理解的世界,从代码中参悟真理看透一切真相,这会是一种什么滋味呢?也许你会说,我没学过代码,也当不成程序员,如何感受的到?其实如果仅仅是想体会一下编写程序代码实现某种自动化处理的快乐并不需要高深的理论知识和旷日持久的学习,txt这个平日里最常见的临时文档文件就能够帮助你,用它易于转化为bat批处理文件的特性足以让你发挥想象力,创造出属于自己的代码实现自己专属的小程序。
其实批处理文件的历史相当长,它在DOS时代就已经存在并发挥着重要作用。批处理是一种简化的脚本语言(即Batch),也称为批处理脚本,就是对某对象进行批量的处理,今天本文中涉及的批处理文件扩展名为.bat,除此之外批处理文件扩展名还会有.cmd,平时我们在安装游戏和软件的时候会常常见到他们的身影。.bat批处理文件里面的代码基本都是基于DOS系统,如果年轻的时候学习过DOS或者平时了解一些DOS命令,相信会上手非常快。
正因为批处理文件是一种简化的脚本语言,我们这些门外汉才有可能在较短的时间内即可实现简单的代码编程和功能实现。在正式开始之前,你可以先考虑一下,想实现什么简单功能,比如清理系统垃圾、批量复制文件等等。下面笔者为大家举两个简单的例子:
自动清理系统垃圾文件:
建立霸气的“要你命3000“文档
那么说做就做好了,因为在现在的Windows环境中,建立文件的常见类型中并没有.bat批处理文件,所以我们就可以利用TXT文档文件易于转化的特点进行。首先我们新建一个TXT文档文件,为它起一个你觉得很Cool很销魂的名字,这对你感受到使用它的乐趣很重要。然后双击打开进行代码编写。之前说过由于.bat代码基于DOS,所以代码中使用DOS命令和格式即可,如果有基础可以直接尝试编写,如果没有基础可以参考网上给出的常用DOS命令和命令使用格式,进行编写。
最为常用的几种DOS命令
因为我们是要批量的处理IE的缓存垃圾文件,所以我们所要用到的主要只是一个del删除命令即可。简单DOS命令执行的格式一般是XXX[空格]X:目录子目录[空格]文件名.扩展名,在实际使用中我们常常需要在命令后跟一些变量参数,与del相关的有/p(删除每一个文件之前提示确认)。/f(强制删除只读文件)。/s(从所有子目录删除指定文件)/q(安静模式。删除全局通配符时,不要求确认)。/a(根据属性选择要删除的文件)。我们可以根据实际使用需求使用这些变量。另外IE的缓存文件一般存放在系统盘的Local SettingTemporary Internet Files文件夹下,而一些系统的tmp临时文件及一些冗余文件也是我们要删除的对象,所以我们可以在“要你命3000”中逐行写入以下代码
del /f /s /q "%userprofile%Local SettingsTemporary Internet Files*.*"
del /f /s /q %systemdrive%*.tmp
del /f /s /q %systemdrive%*._mp
del /f /s /q %systemdrive%*.log
del /f /s /q %systemdrive%*.gid
del /f /s /q %systemdrive%*.chk
del /f /s /q %systemdrive%*.old
del /f /s /q %windir%*.bak
(可直接复制红字内容,注意采用半角冒号和文字间的空格),其中*.*表示Temporary Internet Files文件夹下的所有文件(*为替代符,*.*代表所有文件名以及所有文件类型)。
将代码写入TXT文档
改变txt“要你命3000”文档为bat批处理文件
在将代码写入文档之后,我们保存并关闭文档,然后重命名该文档,将扩展名由.txt改为.bat,系统会提示你是否确定改变文件类型,这有可能影响文件的可执行性,当然选“是”因为我们要的就是改变文件的可执行性,如图所示。
改变为.bat批处理文件后的“要你命3000”
“要你命3000”执行删除文件中
在改变了扩展名之后,你会发现txt文档自动的变成了带有齿轮图标的批处理文件,那么现在它就成了一个可执行文件,双击打开它,它将自动运行刚才写入的代码,执行删除系统冗余文件的功能。其实这就是几年前网上流行的强力删除系统垃圾文件的程序的原理,不过我们今天写入的代码并没有那般的面面俱到而已。如果以上的步骤你都顺利完成了,那么恭喜你,你已经为自己写出了一个简单的删除系统垃圾的小程序。
自动关机助手:
再举个例子,因为在Windows7之后,系统关机需要用户通过点击开始菜单按钮来关闭系统,这对许多用户来说很不方便,我们何不利用简单的bat文件自己实现自动关机呢?
实际上实现这个功能就更简单了。我们还是如之前一样,建立一个txt文档,然后将以下代码写入:
shutdown -s -t 10
写入10秒自动关机命令行
没错代码只有一行,也很好理解,shutdown是关机,变量方面,-l是注销(不能与选项 -m 一起使用),-s是关闭此计算机,-r关闭并重启动此计算机,-a放弃系统关机,-t是将关闭时间设置为xx秒。
10秒自动关机批处理文件
于是我们经过组合,轻易的得到了10秒自动关机的代码。将代码写入刚才建立的txt文档,并将其更改扩展名为.bat,如图所示。
关机注销计划提示
双击打开,你会发现系统提示你“将于1分钟内注销“,时间上你可以通过变量自由控制,于是你再也不用在关机的时候去菜单里点击关机按钮了。
实际上,笔者只是就自己的能力所及举了两个较为简单的例子而已,如果你也只是门外汉,那么我想通过花20分钟去了解这些简单DOS命令组合,就还可以得到诸如自动批量导出移动磁盘照片、音乐文件,自动查询目标磁盘固定类型的文件,自动批量打开应用程序等诸多功能。如果你熟悉DOS命令,那么这些东西对你来说肯定就是小菜一碟,一定能够组合出更为有用的功能,尽情组合这些代码为我们所用,打造一个只属于自己的自动化系统,肯定是相当带感的一件事儿,不如你也来动手感受一下。
2011-02-18
批处理教程之——字符串查找:find
DOS批处理应用循环拷贝文件到固定目录的子目录
批处理中的时间计算详解
VBS对Office软件Word、Excel等的操作实例
如何进入DOS系统/界面
dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看
一份比较详细的DOS命令说明【DNJSB整理】
浅谈批处理for命令中的变量扩展
dos(cmd)中删除、添加、修改注册表命令