DOS命令基础:echo、变量、函数、set、字符串截取
来源:互联网 发布:网络优化工程师前景 编辑:程序博客网 时间:2024/05/17 00:00
echo命令
echo显示当前ECHO设置状态;
echo.输出空行,即相当于输入一个回车,echo后面的点要紧挨一起,中间不能有空格,后面的点可以用,:;/[ \ ]+等任一符号替代。即:下面的命令都是输出空行:
echo. echo, echo: echo; echo/ echo\ echo[ echo] echo+
echo 文字,输出设置的文字内容
@符号:隐藏后面的执行指令
函数:
函数以一个标签开始,并以goto:eof结束
函数怎么工作
调用函数的脚本将其分成两部分。
1.main script: 从第一行开始并且以 GOTO:EOF命令结束
2.函数部分:由多个函数组成,由main script调用。
编写带参数的函数
采用%1~%9来代表参数的值。而%0表示批处理文件本身,当然,如果传递的参数是“xxx”形式,而要获取的参数值为xxx,则需要使用%~1形式的参数。
:myFunctionecho it could do %~1 of things %~2goto:eof调用时给函数传参
(参数直接放在函数后面,用空格或逗号分隔)
1.用空格或者逗号将参数分开
2.用双引号将带有空格的字符串参数括起来
call:myDosFunc 100 YeePEE call:myDosFunc 100 "for me" call:myDosFunc 100,"for me"传参实例:
@echo offcall:myFunction 100 hellocall:myFunction 100,hellocall:myFunction 100,"hello"call:myFunction 100 "hello world"echo.&pause&goto:eof:myFunctionecho.echo it could do %1 of things %2echo it could do %~1 of things %~2goto:eof
环境变量
在dos中直接输入set会输出所有的本地环境变量
变量的设置与引用
调用函数后不像其他语言那样能有返回值,最常用的做法是先用set定义一个全局变量,然后在函数中使用该全局变量并将需要的值保存在全局变量中
直接用该全局变量。
SET命令设置变量,用%xy%引用变量xy
@echo offset var=hello worldecho %var%pause交互式的变量(set /p)
让用户自己输入变量的值,然后我们在来根据这个值来做相应操作
set /p 变量名=提示语
表达式类型的变量(set /a)
set /a var=2 - 1set /a var=2 * 2set /a var=2 / 2set /a var=(1+1) + (1+1) set /a a=1+1,b=2+1,c=3+1set /a var+=1set /a var*=2运算符
() 分组
! ~ - 一元运算符
* / % 算数运算符
+ - 算数运算符
= *= /= %= += -= 赋值
&= ^= |= <<= >>= 表达式分隔符
对于逻辑或取余操作符,使用的时候需要添加引号才能正常使用,否则报错
<< >> 逻辑移位
& 按位“与”
^ 按位“异”,非
| 按位“或”
字符串替换(=)
%PATH:str1=str2%这个操作就是把变量%PATH%里的str1全部用 str2替换。
实例:
@echo offset a=www.baidu.comecho 替换前的值:%a%set b=%a:.=点%echo 替换后的值:%b%pause
字符串截取(~)
@echo offset a=www.baidu.comecho 替换前的值:%a%set b=%a:.=点%echo 替换后的值:%b%::从下标1对应的位置开始,截取4位字符(下标从0开始)set c=%b:~1,4%echo %c%::从第2位开始截取,截止倒数第4位set f=%b:~1,-4%echo %f%::截取3对应的下标到末尾的字符set e=%b:~3%echo %e%::截取-3对应的下标到末尾的字符,即倒数3位set d=%b:~-3%echo %d%echo.pause
截取的作用
函数的局部变量
局部变量放在SETLOCAL与ENDLOCAL之间定义。
SETLOCAL可以很好的保护函数内与外面的变量不会冲突。即:
setlocalset var1=xxxset var2=xxxendlocal
阅读全文
0 0
- DOS命令基础:echo、变量、函数、set、字符串截取
- dos通过for命令截取字符串
- Dos批处理之set截取字符串实例法全研究
- sqlplus 命令,set echo
- DOS截取字符串~
- DOS截取字符串
- dos下截取字符串
- DOS命令(cmd)批处理:替换字符串、截取字符串、扩充字符串、获取字符串长度
- DOS批处理命令之echo和@命令
- DOS命令参考-SET
- DOS命令 For Set
- DOS SET命令详解
- DOS中的set命令
- DOS截取字符串的方法
- dos for截取字符串学习
- dos if 命令,echo和@的详解
- DOS中的echo命令使用详情
- 关于DOS(windows命令行)截取变量中字符串问题的详细说明
- RedHat Enterprise Linux 6.4使用Centos 6 的yum源
- Android 测试资源之 GitHub 篇
- Android MediaProjection截屏与录屏(ScreenCapture Library 的使用)(二)
- 三目运算
- 对Java基本数据类型的再思考
- DOS命令基础:echo、变量、函数、set、字符串截取
- 单链表的快速排序
- CN200左右封板OP40维修事例
- cdh cm5.11.0 namenode 高可用配置
- 计算机网络--TCP/IP网络端口分类规则
- 我的十年我的初心
- Java多线程面试常见核心问题总结
- Java中接口interface与抽象类abstract
- 创建用户配置文件