windows命令行基础
2021-01-05 18:28
标签:打开 控制面板 数字 追踪 处理 多个 起点 区分 形式 一、管理环境路径(环境变量) windows命令行基础 标签:打开 控制面板 数字 追踪 处理 多个 起点 区分 形式 原文地址:https://www.cnblogs.com/millionSun/p/14222506.html
1、查看可执行文件的当前命令路径。
语法:shell中输入path。
注:path显示中的封号只是起到分割不同路径的作用,命令shell使用分号来确定文件的终点和另一个文件的起点。
2、添加管理环境路径
A、控制面板/系统-高级系统设置-系统属性-高级-环境变量;
B、通过setx命令
语法:setx PATH ”%PATH%;C:\script”
注:(1)、windows是按照顺序搜索的,按照上述语法设置的环境变量将是最后一个被搜索的,有时候会降低脚本的执行速度,为提高脚本执行速度,可以将其设置为第一个路径,语法如下:setx PATH “c:\script;%PATH%”
(2)、我们在写路径时,一定要指定环境变量,例如%PATH%,否则会删除其它的路径信息。
注:脚本中经常使用的语句和命令。
Cls:清除控制台窗口,重置屏幕缓冲。
Rem:在脚本中创建注释
Echo:在命令行中显示消息、关闭或打开命令回显。
@:以行为单位控制命令的回显方式。
Title:设置命令shell窗口的标题栏。
Color:设置命令shell窗口使用的文本色和背景色。
二、脚本基础
1、管理文字的显示方式与命令回显方式
(1)、Echo命令有两种用途,一种是向输出(命令shell或文本文件)中写入信息,一种是打开或者关闭命令回显。
(2)、使用@对命令回显进行调整:@命令可以用行为单位来防止命令回显到输出中,一定意义上可以理解为特定于某行的echo off语句。
注:@的真正价值在于可以使得命令shell不再显示命令提示符或者echo off 命令,确保脚本的输出信息只包含所键入的命令的输出。建议在所有的命令行显示脚本前使用@echo off;在命令shell中键入@echo off,也可以关闭命令提示符的回显。
2、设置控制台窗口的标题与颜色
Title:展示运行中的脚本名,还可以展示脚本运行的速度。
Color:后面书写一个由两个数字组成的十六进制代码参数,第一个数字代表背景颜色,第二个代表文字颜色。(也可以只设置一个参数)。
3、向脚本传递参数
可以在脚本启动时向其传递参数,通过使用参数,可以设置脚本中特殊的变量,或者传递脚本运行的信息,参数应该跟在脚本名之后,不同的参数使用空格隔开(必要时可以将多个参数用封号封装起来)。
例:向一个名为check-sys的脚本传递参数mailer和full;
Check-sys mailer full
注:传递给脚本的每一个值都可以使用形参进行检查与解释。脚本名本身由%0表示,%1代表传递给脚本的第一个参数,以此类推,直到%9。
4、熟悉变量
(1)、定义
A、内置的系统变量:内置在系统中,或者启动时来自系统硬件。对所有的windows进程都是可用的,不管是否有人交互式的登陆了系统。
B、内置的用户变量:系统变量可以来自windows注册表,除了内置的系统变量之外,还有一些登陆时设置的变量,这些变量称之为内置的用户变量。
注:内置的用户变量对所有的用户都是有效的,不管是那个用户登陆了系统。
(2)、变量的查看与定义
A、查看:命令提示符中键入set,可以查看实例中所有的已知变量。
B、定义:例:set variable_name=variable_value
注:a、有一些变量(包括系统与用户环境变量)在shell中有着特殊的含义,包括path、computername、homeDrive以及其它重要的环境变量。
b、需要学习和关注的变量errorlevel,该变量可以追踪最近使用命令的退出代码。
正常执行,则错误级别是0。如果执行命令中出错,则错误级别会被设置为一个适当的非零值,相关的错误类型值。
1:代表通常的错误。
2:代表执行错误,意味着命令没有正确执行。
-2:代表算术错误,比如创建了一个命令shell无法处理的过大的数值。
可以使用多种方法使用errorlevel变量,比如,检查特定的错误条件;
If “%ERRORLEVEL” ==”2” echo “An error occurrd! ”
c、变量的释放,将变量值设置为空。例:set working=
5、使用变量
(1)、变量的命名:与编程命名方法一致,采用小驼峰式命名法,但是shell不区分大小写。
(2)、设置变量值:
A、在变量名和变量值中,空格都是有效的,因此如果希望变量名或变量值中包含空格,可以在等号附近设置空格。特别注意书写时不要使用编程的写法留有空格。
B、命令shell不对不同的数据类型进行区分,所有的变量都已字符串的形式存储,即便将变量值设置为数值也是如此。
C、有些字符是命令行的保留字符,包括@、、&、|等字符,在使用这些字符时,不管出现在变量值的那个位置,都必须使用换码字符^对其进行换码。
上一篇:142. 前缀统计 AcWing