要写一个BAT脚本,才发现BAT脚本写起来有点“蹩脚”。 但是功能还是蛮强大的,细细看他的帮助文档,可以实现很强大的功能。
我的主要目的是判断一个应用程序是否已经启动,如果没有启动,就启动它。已经启动就跳过了。
最麻烦的的地方在于不知道怎么给bat定义变量以及给这个变量赋值,看了文档和网上的有些实现才发现,要通过For循环来绕着来实现。
脚本如下:
@SET process=notepad.exe
REM 使用tasklist命令来寻找进程,/FI可以指定过滤条件。
@FOR /F %%i IN ('TASKLIST /NH /FI "IMAGENAME eq %process%"') DO @SET var=%%i
REM 这是一种方式,通过比较字符串实现
@REM @IF /I %var%==%process% (@ECHO EXIST) ELSE (@ECHO NOT EXIT) REM Compare by process name
REM 看Var是否有定义过,没有定义过说明没有找到我们需要的进程,跳转
@IF DEFINED var (@GOTO CONTINUE) ELSE (@GOTO START_PROCESS)
:START_PROCESS
REM 在这里写启动进程的命令
@ECHO EXIST
:CONTINUE
REM 继续做其他事情
@ECHO NOT EXIST
@pause
做个记录,以后有类似的脚本要写,不至于无头绪。
可以查看cmd的帮助文档得到更多信息
IF /?
FOR /?
GOTO /?
TASKLIST /?
写到文件里面看比较清楚,呵呵
TASKLIST /?>tasklist_help.txt
分享到:
相关推荐
此外,本文还介绍了批处理BAT脚本中的其他一些命令和技术,例如使用双引号来处理特殊字符、避免使用系统环境变量同名的自定义变量、使用逗号分隔把多个变量赋值成数字等。 此外,本文还提供了一些有用的批处理BAT...
本文将深入解析Windows bat脚本中的for循环用法。 首先,for循环的基本语法分为两种情况:在命令提示符窗口(cmd)中和在批处理文件中。在cmd窗口中,for循环的格式为`for %I in (command1) do command2`,而在批处理...
在批处理BAT脚本中,`for`、`set`和`if`命令是三个非常重要的控制结构,它们能够实现条件判断、变量赋值以及循环操作,大大提升了脚本的灵活性和功能性。 `for`命令主要用于遍历指定范围内的值或文件,其基本语法...
如果不存在,脚本会创建一个新的环境变量,并赋值为一个或多个包含OTL文件的目录路径。如果已经存在,脚本可能将新的路径追加到现有变量的值中,这样不会覆盖已有的OTL搜索路径。 在编写这样的脚本时,开发者通常会...
- 脚本中的命令可以直接运行,也可以包含逻辑控制结构,如if、for循环等,以实现更复杂的任务。 2. **变量与赋值**: - 在批处理脚本中,可以定义变量来存储数据,如`set var1=值1`,之后可以通过%var1%引用这个...
通过学习本教程,读者将掌握BAT批处理脚本的基本概念、常用命令、变量、控制结构和文件操作等方面的知识。 一、批处理基础 批处理定义:批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展...
在“BAT批处理脚本-设注册表某个键的键值为变量1.zip”这个文件中,我们可以推测其内容是关于如何使用批处理脚本来修改注册表中的特定键值,并将其设置为一个预定义的变量。 注册表是Windows系统中存储系统和应用...
3. **变量与环境变量**:批处理脚本支持简单的变量赋值,如`set var=value`。环境变量如 `%PATH%`、 `%USERPROFILE%` 可以获取系统信息。 **二、创建和运行批处理脚本** 1. **创建**:使用文本编辑器(如Notepad++...
在批处理脚本中,我们可以使用各种内部命令,如`COPY`, `DEL`, `REN`等来管理文件,使用`ECHO`, `SET`等来处理变量,以及`IF`和`GOTO`来实现条件判断和流程控制。这个脚本的名称暗示了它的主要功能是处理文本文件,...
在BAT脚本中,可以使用`for /f`循环来解析命令输出,并通过`set`命令设置变量来存储关键数据。 例如,一个简单的`ipconfig`解析示例可能如下: ```cmd @echo off ipconfig | findstr /R "IP.*Address" > ip_info....
`for /F`循环读取“input.txt”文件的每一行,将每一行作为一个整体赋值给变量`%%a`。内部的嵌套`for`循环则进一步将每行拆分成单个字符,每个字符分别赋值给`%%b`,然后使用`echo`命令显示出来。最后,`pause`命令...
这些命令可以实现输出信息、变量赋值、条件判断、循环以及调用其他脚本等功能。在"自动改回主页.bat"中,可能会使用到`reg add`命令来修改注册表,或者使用`start`命令来启动浏览器并加载指定的主页。 **总结** ...
下面我们将详细探讨BAT脚本以及如何实现显示当前用户名称的功能。 首先,批处理脚本基于DOS命令行环境,因此它能够调用系统内置的命令来完成各种任务。在批处理脚本中,我们可以使用`echo`命令来输出信息,`for /f`...
5. **变量**:批处理脚本支持简单的变量赋值,如`set var=value`。 6. **调用外部程序**:通过`call`命令,可以运行其他批处理脚本或可执行文件。 7. **错误处理**:使用`@echo off`关闭命令输出,`pause`暂停脚本...
16. **SETOLOCAL与变量延迟**:用于处理批处理中的变量赋值和延迟扩展。 17. **ATTRIB**:显示或更改文件属性,对于文件管理至关重要。 #### 实例解析与应用 以“@echo off”为例,这是批处理中常用的命令,它...
在实际应用中,编写批处理脚本需要了解DOS命令行环境,理解各个命令的功能和用法,并且需要注意批处理脚本的语法规则,如命令行参数、变量赋值、注释等。在开发过程中,应经常使用`@echo off`来关闭命令回显,使脚本...
接着,`for /f`循环读取指定文件的每一行,并将其赋值给变量`line`。最后,使用`echo !line!`将每一行内容原样输出,实现文本内容的显示。 值得注意的是,由于描述中提到为了避免误触发,脚本被改为了`.txt`格式,...
7. **变量赋值**:通过`set 变量名=值`来设置变量,注意等号两边不能有空格。 总的来说,批处理脚本是Windows环境下强大的自动化工具,熟练掌握其语法和技巧可以大大提高日常任务的效率。在编写涉及特殊字符的脚本...
在IT行业中,批处理脚本是一种非常实用的自动化工具,特别是在Windows系统中,BAT(批处理)文件被广泛用于执行一系列命令行操作。本压缩包“BAT批处理脚本-文本操作-字符串处理.zip”专注于批处理脚本中的字符串...
批处理脚本的基本结构包括命令行指令、控制流程语句(如IF、FOR等)、变量赋值以及调用其他可执行文件或批处理脚本。在这个特定的脚本中,它可能使用`reg`命令来与注册表交互,`reg query`命令用于查询注册表项,...