文档章节

Windows cmd

o
 osc_pn11u1x9
发布于 2018/08/06 09:54
字数 801
阅读 0
收藏 0

「深度学习福利」大神带你进阶工程师,立即查看>>>

Windows cmd

对于跨平台的程序,通常会提供一些有用的命令行工具,因此shell脚本、bat脚本文件就必不可少了。网络上shell的书、文章都不少的,所以了解起来会相对容易的多,而windows下的bat网上则少有涉及。这里不打算写windows bat 编程大全,而是简单对bat做一个简单的入门级的学习。

不论在写shell,还是bat,它们的设计都遵守这样一条原则:一切都是命令。Windows下命令是大小写不敏感的。

 

基本命令(rem, echo, @,/?)

rem:注释 (comment, remarks)。参数可以是任何内容。

echo :它有两个功能:打印消息、调试开关。如果参数是on 或者off,代表打开、关闭调试,如果后面是其它内容,则参数代表要输出的消息。为什么说是debug开关呢?如果设置了echo on,随后执行的任何命令及其执行结果都会输出到标准输出流。

@用于关闭某个命令的调试信息,意思是说使用@标注的命令不会打出命令本身、执行结果。

/? 查看命令帮助

例如:

REM open the cmd echo
@echo on
echo hello, windows cmd 
@echo hello, windows cmd 

REM close the cmd echo
@echo off
echo hello, windows cmd 
@echo hello, windows cmd

 

执行结果: 

D:\Note\windows cmd>REM open the cmd echo

D:\Note\windows cmd>echo hello, windows cmd
hello, windows cmd
hello, windows cmd

D:\Note\windows cmd>REM close the cmd echo
hello, windows cmd
hello, windows cmd

 


对于REM的命令,也是会打到STD里,如果不希望看到,就可以使用@标注。 

 

 

控制命令(if-else, for-in-do, goto)

 

if-else

 

if [noterrorlevel number command [else expression] 基于上一个命令执行的结果进行判定操作

if [notstring1==string2 command [else expression] 判定两个字符串是否相等

if [notexist FileName command [else expression]  判定指定的文件是否存在

If command extensions are enabled, use the following syntax:

if [/istring1 CompareOp string2 command [else expression] 进行字符串比较 (equ, neq, lss, leq, gtr, geq)

if cmdextversion number command [else expression]

if defined variable command [else expression]

 

 

 

For-in-do

循环执行,命令语法:

for {%variable | %%variable} in (set) do command [CommandLineOptions]

1)For, in, do 是基本结构,必不可少;

2){%variable | %%variable} 必要的,变量大小写敏感。

在命令提示符中执行for时,for中引用变量时,使用%

在批处理文件中执行for时,for中引用变量时,使用%%

此外,为了避免与bat文件的参数 %0到 %9相冲突,所以变量不能是0-9的数字

3)( set ) 必要的。用于指定多个 files, directories, range of values, textstrings。括号不能省。

 

4)command 必要的,代表要执行的命令。

5)commandLineOptions, 执行command时所需的参数

 

更多用法,可能参考:https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-xp/bb490909(v%3dtechnet.10)

 

 

goto

语法:goto label

跳转到指定的label。如果指定的label不存在,就继续执行下一条命令。如果找到label,就从label处继续执行。如果程序以正常顺序执行到一个label处,而不是通过goto跳转到label,label下的语句仍旧以正常顺序执行。

 

 

 

 

想要了解更多指令参见:

https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-xp/bb490890(v%3dtechnet.10)

 

 

 

 

 

 

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
Flash 皮肤样式--Windows8UIStyle

Windows8UIStyle 模仿 Windows 8 的桌面用户界面,使得 FlashSwing 应用程序在 Windows 8 系统中拥有与传统应用程序一致的用户界面。 Windows8UIStyle 对 FlashSwing 默认主题的修改: 提供和...

Gregary
2013/02/19
1.3K
1
Hbase的Windows访问接口库--libhbase4win

libhbase4win是基于Thrift的Hbase的Windows访问接口库,开发工具使用VS2010,Hadoop版本为1.1.0,Hbase版本为0.94.0,thrift版本0.9.0,执行编译需要boost和thrift支持。...

张子良
2013/03/06
764
0
Windows PHP 加速器--WinCache

微软新推出了配合FastCGI模式使用的WinCache扩展,这是一个可以显著增加PHP应用在Windows环境下使用速度的PHP加速器。所有的PHP应用都能够利用这个扩展所提供的加速功能而不需要修改任何代码...

王道中强流
2012/11/09
5.3K
0
.NET开源独立博客程序--小泥鳅

小泥鳅创建于2008年夏天,基于.Net平台开发,拥有完整的文章发布,评论,订阅,标签等功能,满足个人/团队信息发布需求,可作为Blog,CMS,甚至建企业站。 小泥鳅采用了 NVelocity,CKEdito...

小伟伟
2012/11/26
4.1K
0
XUI Lib

XUI 是一个高效、灵活易用的 Windows UI 库,使用 C++ 编写,基于 ATL 库。 Features: Layout by XML. Full basic controls: Static, Button, Edit, List (by aggregation), Tree, Animation......

匿名
2012/11/29
1.4W
0

没有更多内容

加载失败,请刷新页面

加载更多

MySQL索引相关

一、索引分类 1、单列索引 1.1、主键索引(不能包含空值) 1.2、唯一索引(可以包含kong'zhi) 1.3、普通索引 2、多列索引 2.1、组合索引 3、全文索引 3.1、全文索引只针对大文本字段有效,比如:...

城里的月光
41分钟前
21
0
二级分销的理解

人人商城分销定义 例如: 分销商:A、B、C、D、E 群体1:A是B的上级分销商,B是C的上级分销商,C是D的上级分销商,则他们分销层级是:A是一级分销商,B是二级分销商,C是三级分销商 群体2:B...

红翼网
44分钟前
6
0
HBase/TiDB都在用的数据结构:LSM Tree,不得了解一下?

LSM Tree(Log-structured merge-tree)广泛应用在HBase,TiDB等诸多数据库和存储引擎上,我们先来看一下它的一些应用: 这么牛X的名单,你不想了解下LSM Tree吗?装X之前,我们先来了解一些...

Monica2333
45分钟前
16
0
Linux下如何高效切换目录?

Linux 下对于目录的切换,大家肯定会想到一个命令:cd 命令。这个是 Linux 下再基本不过的命令,如果这个命令都不知道的话,赶紧剖腹自尽去吧。 cd 命令确实很方便,但如果需要频繁在下面的目...

良许Linux
48分钟前
27
0
限流算法

1 计数算法 2 滑动窗口 (可以解决计数算法 临界线 QPS超过限流问题) 3 漏桶算法 4 令牌桶算法

yzzzzzzzz
52分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部