当前位置:首页 > Windows程序 > 正文

WindowsBatchScripting

2021-03-19 Windows程序

在新窗口开始程序, 或者打开一个文件; 使用unclear algorithm (模糊算法)检查是否第一个参数是窗口标题, 或者是要执行的程序.
hypothesis(猜测): 使用第一个参数外围的引号作为提示, 表明是个窗口标题.

ex.
- start notepad.exe & echo "Done."
打开notepad.exe, 继续处理下一个命令, 无需等待start的命令结束. Keywords: asynchronous(异步)
- start "notepad.exe"
启动一个新的控制台窗口, “”notepad.exe”变成窗口标题, 明显不是想要的结果.
- start "" "C:\Program Files\Internet Explorer\iexplore.exe"
start Internet Explorer. 空字符 “” 作为第一个参数成了console的窗口标题, 但实际上这个console没有打开, 或者至少没有显示出来.
- start "C:\Program Files\Internet Explorer\iexplore.exe"
打开一个新的console窗口, “C:\Program Files\Internet Explorer\iexplore.exe”作为标题, 不是想要的结果.
- start /wait notepad.exe & echo "Done."
start notepad.exe, 在继续执行前要等待它结束.
- start /low notepad.exe & echo "Done."
同上, 但以较低优先级启动程序.
- start "" MyFile.xls
用相应程序打开文本.
- start
在相同的当前文件夹下start一个新的console.
- start .
用 Windows Explorer(资源管理器)打开当前文件夹.
- start ..
用 Windows Explorer打开父文件夹.
- start "" "mailto:"
打开相应程序来写邮件.
- start /b TODO:example-application-where-this-is-useful
start程序而不用打开新的console窗口, 重定向被start的命令的输出, 到console窗口.

TIME

显示系统时间.

TITLE

设置显示在 console窗口上的标题.

TYPE

打印文件内容到output.

ex.
- type filename.txt
- type a.txt b.txt
- type *.txt
- type NUL > tmp.txt
创建一个空文件(blank file)

VER

显示command processor(命令处理器)或操作系统版本.

C:\>VER Microsoft Windows XP [Version 5.1.2600] C:\>

版本string:
- Microsoft Windows XP [Version 5.1.2600]
- Microsoft Windows [Version 6.0.6000]
- …

“version”文字以本地化形式出现.

VERIFY

设置或清除选项: 验证是否 COPY文件 etc. 被正确写入了.

VOL

显示卷标(volume label)

External commands

Windows命令解释器可以使用外部命令作为单独的可执行程序, 由Microsoft操作系统提供, 或者作为第三方命令解释器bundled(捆绑).
通过替换程序文件, 可以有不同的命令功能.

许多外部命令支持 “/?”约定, 可以将on-line的食欲信息写到标准输出, 退出时的status code为0.

ARP

显示或改变 address resolution protocol cache中的 item, 将 IP地址map到物理地址.

AT

安排在某个时间运行一个程序, 参见SCHTASKS.

ATTRIB

显示或设置 attribute. 如果没参数, 就显示当前目录下所有文件的attribute. 如果没有attribute修改指令, 它就显示符合搜索通配符规格的文件和目录.
和 unix的 chmod类似.

修改指令:
- 要添加attribute, 在字母前附加 ‘+’
- 要移除attribute, 在字母前附加 ‘-’
- Attributes:
- A - Archived
- H - Hidden
- S - System
- R - Read-only
- …其他

ex.
- attrib
显示当前文件夹下所有文件的 attributes.
- attrib File.txt
显示文件的 attribute.
- attrib +r File.txt
添加 “Read-only”(只读)属性
- attrib -a File.txt
移除 “Archived” (存档)属性.
- attrib -a +r File.txt
移除 “Archived”属性, 添加 “Read-only” 属性.
- attrib +r *.txt
对文件集合进行操作
- attrib /S +r *.txt
在子目录中递归执行.

参见 “attrib /?”.

BCDEDIT

(XP没有). 修改 Boot Configuration Data (BCD)开机配置数据库文件.

CACLS

显示或修改 discretionary access control lists (DACLs); 参见 ICACLS

CHCP

显示或修改 active code page number.

CHKDSK

检查磁盘问题, 列出问题然后需要的话就修复.

CHKNTFS

显示或设置电脑启动时是否启动系统检查. 系统检查使用 Autochk.exe执行. “NTFS”部分会有误导, 这个命令不只可以对 NTFS文件系统使用, 也可以对 FAT和 FAT32文件系统使用.

CHOICE

让用户按一个key来对多种选项进行选择, 然后通过选项设置 error level. Windows2000和 WindowsXP中没有, 它在 Vista中重新引入, Win7, Win8都有.

ex.
- choice /m "Do you agree"
给用户展示一个yes/no question, 选yes时error level为1, 选no为2. 如果按下Ctrl + C, error level为0.
- choice /c rgb /m "Which color do you prefer"
给用户展示一个问题, 以及字母. 根据用户按 r, g, b, error level 设为 1, 2, 3.

也可以用 set /p

CIPHER

显示 encryption state(加密状态), 在 NTFS卷上对文件夹进行 encrypt(加密)或decrypt (解密).

CLIP

(XP没有) 将管道输入放入剪贴板(clipboard).

ex.
- set | clip
将环境变量列表放入剪贴板.
- clip < File1.txt
将 File1.txt内容放入剪贴板.

CMD

调用Microsoft CMD的另一个实例.

COMP

比较文件, 参见 FC.

COMPACT

显示或改变文件/文件夹的压缩(compression), 针对 NTFS partitions(分区).

CONVERT

将一个卷(volume)从 FAT16或FAT32文件系统转化为 NTFS文件系统.

DEBUG

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/63632.html