多语言展示
当前在线:460今日阅读:60今日分享:41

批处理基础和批处理开发环境:[1]一

本文介绍批处理的基础知识,并且使用C#写一个简单的批处理开发环境并逐步完善。
工具/原料

Visual Studio(本文适应VS2013,其他版本的VS亦可)。

开发环境
1

用记事本写批处理,在调试时往往是先保存文件,然后双击批处理文件,这不是很方便。为了解决这个问题,我们的第一个批处理开发环境就诞生了。软件要求:启动软件后即可编写代码,按F5或点击菜单运行。

2

打开VS,新建C# WinForm项目,命名为“批处理开发环境”,如图:

3

窗体设计,如下:

4

在主窗体中添加代码,如下: public partial class MainForm : Form    {        private string cFilePath;        public MainForm()        {            InitializeComponent();        }        private void 运行ToolStripMenuItem_Click(object sender, EventArgs e)        {            Run(cFilePath);        }        private void MainForm_Load(object sender, EventArgs e)        {            //构造文件路径:当前目录中的Project子目录中的Test.bat文件            string dirPath = Environment.CurrentDirectory;            string proPath = Path.Combine(dirPath, 'Project');            Directory.CreateDirectory(proPath);            cFilePath = Path.Combine(proPath, 'test.bat');        }        //运行批处理        private void Run(string path) {            try            {            string content = EditBox.Text;            if (content == '') { return; }            File.WriteAllText(path, content );            System.Diagnostics.Process.Start(path);               }            catch (Exception)            {                MessageBox.Show('悲剧,哪里出错了...再试一试吧!');            }                       }        private void EditBox_KeyDown(object sender, KeyEventArgs e)        {            var k = e.KeyCode;            switch (k) {                 case Keys.F5 :                    Run(cFilePath);                    break;                default :                    break;            }        }    }

5

调试运行,并在TextBox中添加如下代码:@echo offtitle Batch Editor-by killfecho Hello Wrold!!!pause然后,按F5或点击菜单,运行脚本,效果如下:

批处理基础
1

echo命令。功能:显示消息,或打开关闭回显功能。语法:echo [{on|off}] [message]说明:echo 字符串,把字符串显示在屏幕上(命令控制台);echo off,关闭回显,此后将不会显示命令本身,而只显示运行结果;echo on,打开回显,此后将同时显示命令和结果。举例:echo Hello Wrold!!!@echo offecho Hello Wrold!!!@echo onecho Hello Wrold!!!pause运行效果如下图:

2

@命令。功能:把@放在命令前,表示该命令不回显,即不显示命令本身,只显示命令运行结果。举例:echo Hello Wrold!!!@echo Hello Wrold!!!pause运行效果,如下图:小技巧:批处理往往以@echo off命令开始,使得屏幕看起来更整洁。

3

Rem命令。功能:注释。举例:@echo offecho Hello Wrold!!!rem echo Hello Wrold!!!pause

4

Pause命令。功能:暂停执行,等待用于按下任意键。运行 Pause 命令时,将显示下面的消息:Press any key to continue. . .(或:请按任意键继续. . .)举例:@echo offecho Hello Wrold!!!pause运行效果,如下图。小技巧:使用Pause命令往往是为了在屏幕上看到运行结果,如果不用Pause命令,控制台窗口将会不等待用户反应过来就关闭了。

5

Call命令。功能:从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。举例:创建1.bat文件,并放置在C盘根目录,1.bat中的代码如下:@echo offecho Hello Wrold!!! by-1.batpause 在批处理开发环境中输入代码:@echo offecho Hello Wrold!!!call c:\\1.batpause F5运行查看结果如下图。

6

Start命令。功能:调用外部程序。举例:创建1.bat文件,并放置在C盘根目录,1.bat中的代码如下:@echo offecho Hello Wrold!!! by-1.batpause 在批处理开发环境中输入代码:@echo offecho Hello Wrold!!!start c:\\1.batpause F5运行查看结果如下图。小技巧:Start和Call的区别在于:Call在当前进程中运行,Start在新的进程中运行,而且Start可以运行一切可执行文件。

注意事项

是不是觉得我们的批处理开发环境实在是太简单了?不能新建文件、不能保存等等,有人说这根本不算是开发环境,而事实也是如此,但这并不能否认我们在一点点进步。下一篇我们进一步完善我们的软件,介绍批处理更深入的知识。

推荐信息