当前位置:   article > 正文

杂谈 | windows批处理脚本 | 配置项目环境变量_脚本添加windonws环境变量

脚本添加windonws环境变量

一、windows脚本编程

  以配置一个项目的环境变量为例,来详解用到的命令行语法。若本文未涉及到你需要的命令,则可以查看:Windows 命令 这个链接来查看命令的使用。

1.echo 命令

参考:https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/echo

  • 功能:

    显示消息或者打开或关闭命令回显功能。

    如果不结合任何参数使用,echo 会显示当前回显设置。

    C:\Users\85733>echo
    ECHO 处于打开状态。
    
    • 1
    • 2

    什么是命令回显功能呢?

      命令回显功能是指在运行命令或脚本时,系统将命令的执行过程和结果显示在屏幕上,使用户能够实时地看到命令的执行情况。通常,当命令回显功能打开时,在执行每一步命令时,系统将会显示执行的命令本身以及对应的结果,从而帮助用户了解命令的执行过程,排查可能出现的问题。关闭回显时,命令提示符不会出现在“命令提示符”窗口中。 若要再次显示命令提示符,请键入 echo on。

  • 语法:

    echo [<message>]   #用于显示消息
    echo [on | off]	   #打开或关闭命令回显功能
    
    • 1
    • 2
    • 参数on | off: 用于打开或关闭命令回显功能。on 为打开命令回显功能,off 为关闭命令回显功能。命令回显功能默认已打开。

    • 参数<message> :指定要在屏幕上显示的文本

      C:\Users\85733>echo 请用管理员身份运行
      请用管理员身份运行
      
      • 1
      • 2
    • 特殊参数 /?:在命令提示符下显示帮助

      C:\Users\85733>echo /?
      显示消息,或者启用或关闭命令回显。
      
        ECHO [ON | OFF]
        ECHO [message]
      
      若要显示当前回显设置,请键入不带参数的 ECHO。
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
  • 注意事项:

    • 若要防止回显批处理文件中的特定命令,请在该命令前面插入 (@) 符号。 若要防止回显批处理文件中的所有命令,请在文件开头包含 echo off 命令。

      @echo on
      @echo 请用管理员身份运行
      
      • 1
      • 2
    • echo %cd%:用于打印当前目录的路径

      %cd% 可以用在批处理文件中,也可以用在命令行中;展开后,是驱动器盘符:+当前目录;%cd%的内容是可以被改变的,其内容为命令的执行路径或批处理文件的执行路径。

      示例:

      C:\Users\85733>echo %cd%
      C:\Users\85733
      
      • 1
      • 2

2.cd 命令

参考:https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/cd

  • 功能:

    显示当前目录的名称或更改当前目录。

  • 语法:

    cd [/d] [<drive>:][<path>]
    cd [..]
    
    • 1
    • 2
    • 参数 /d:用 cd 命令更改驱动器时,用到这个参数

    • 参数<drive>::指定要显示或更改的驱动器(如果与当前驱动器不同)。

      C:\Users\85733\Desktop>cd /d d:pms
      D:\pms>
      
      • 1
      • 2

      若不加 /d 参数,则切换不起作用

    • 参数<path>:指定要显示或更改的目录的路径

      C:\Users\85733>cd Desktop
      C:\Users\85733\Desktop>
      
      • 1
      • 2
    • 参数..:指定要更改为父文件夹

      C:\Users\85733>cd ..
      C:\Users>
      
      • 1
      • 2
    • 参数/?:在命令提示符下显示帮助

  • 示例:

    cd %~dp0
    
    • 1

    用于切换到脚本所在的目录下。与 %cd% 相比,%~dp0只可以用在批处理文件中,它是由它所在的批处理文件的目录位置决定的,是批处理文件所在的盘符:+路径。在执行这个批处理文件的过程中,它展开后的内容是不可以改变的。

3. SET 命令

  • 功能:

    查看指定变量名的环境变量 或者 为某一变量名设置临时环境变量(其作用范围:只有在当前窗口下有效)。

  • 语法:

    SET [varible=[string]]
    
    • 1
    • 参数varible:指定环境变量名
    • 参数string:指定要指派给变量的一系列字符串,若没有这个参数,则是查看指定变量名的环境变量值
  • 示例:

    D:\>set Path
    Path=D:\Program Files (x86)\VMware\VMware Workstation\bin\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;D:\Qt\Qt5.15.2\5.15.2\msvc2019_64\bin;D:\Qt\Qt5.15.2\5.15.2\msvc2019_64\lib;D:\Program Files\MariaDB 10.5\bin;D:\Program Files\MariaDB 10.5\lib;D:\Program Files\Kingbase\ES\V8\KESRealPro\V008R006C006B0021\Server\bin;D:\Program Files\Kingbase\ES\V8\KESRealPro\V008R006C006B0021\Server\lib;D:\Program Files\MariaDB 10.5\data;D:\pms\platform\platform_v1.0\bin_d;D:\pms\platform\platform_v1.0\lib_d;D:\pms\pms1100\pms1100_v1.0\bin_d;D:\pms\pms1100\pms1100_v1.0\lib_d;D:\pms\platform\platform_v1.0\src\graph\baselib\bin_d;D:\pms\platform\platform_v1.0\src\graph\baselib\lib_d;D:\pms\platform\platform_v1.0\src\graph\graphplatform\bin_d;D:\pms\platform\platform_v1.0\src\graph\graphplatform\lib_d;D:\VS2019\2019\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x64;;D:\Qt\5.15.2\msvc2019\bin;D:\Qt\5.15.2\msvc2019_64\bin;D:\VS2019\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\Hostx86\x86;D:\Program Files\CMake\bin;D:\Qt\5.15.2\msvc2019_64;C:\Users\85733\AppData\Local\Microsoft\WindowsApps;C:\Users\85733\.dotnet\tools
    PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
    PATH_YN=D:\Qt\Qt5.15.2\5.15.2\msvc2019_64\bin;D:\Qt\Qt5.15.2\5.15.2\msvc2019_64\lib;D:\Program Files\MariaDB 10.5\bin;D:\Program Files\MariaDB 10.5\lib;D:\Program Files\Kingbase\ES\V8\KESRealPro\V008R006C006B0021\Server\bin;D:\Program Files\Kingbase\ES\V8\KESRealPro\V008R006C006B0021\Server\lib;D:\Program Files\MariaDB 10.5\data;D:\pms\platform\platform_v1.0\bin_d;D:\pms\platform\platform_v1.0\lib_d;D:\pms\pms1100\pms1100_v1.0\bin_d;D:\pms\pms1100\pms1100_v1.0\lib_d;D:\pms\platform\platform_v1.0\src\graph\baselib\bin_d;D:\pms\platform\platform_v1.0\src\graph\baselib\lib_d;D:\pms\platform\platform_v1.0\src\graph\graphplatform\bin_d;D:\pms\platform\platform_v1.0\src\graph\graphplatform\lib_d;D:\VS2019\2019\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x64;
    
    • 1
    • 2
    • 3
    • 4

    设置环境变量

    SET QMAKESPEC=win32-msvc
    SET QTDIR=D:\Qt\5.15.2
    SET Qt_INCLUDEPATH_=%QTDIR%\include
    SET MYSQLHOME=D:\Program Files\MariaDB 10.5
    SET KINGBASEHOME=D:\Program Files\Kingbase\ES\V8\KESRealPro\V008R006C006B0021\Server
    SET VCINSTALLDIR=D:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VC
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

4.SETX 命令

参考:https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/setx

  • 功能:

    此命令提供直接和永久设置系统环境值的唯一命令行或编程方式。 可以通过控制面板或通过注册表编辑器手动配置系统环境变量。 set 命令是命令解释器 (Cmd.exe) 的内部命令,仅为当前控制台窗口设置用户环境变量。

  • 语法:

    setx [/s <computer> [/u [<domain>\]<user name> [/p [<password>]]]] <variable> <value> [/m]
    setx [/s <computer> [/u [<domain>\]<user name> [/p [<password>]]]] <variable>] /k <path> [/m]
    setx [/s <computer> [/u [<domain>\]<user name> [/p [<password>]]]] /f <filename> {[<variable>] {/a <X>,<Y> | /r <X>,<Y> <String>} [/m] | /x} [/d <delimiters>]
    
    • 1
    • 2
    • 3

    语法比较复杂,其实很多选项没用到

  • 示例:永久保存到系统环境变量中

    SETX "QMAKESPEC" "%QMAKESPEC%" -M
    SETX "QTDIR" "%QTDIR%" -M
    SETX "MYSQLHOME" "%MYSQLHOME%" -M
    SETX "KINGBASEHOME" "%KINGBASEHOME%" -M
    SETX "VCINSTALLDIR" "%VCINSTALLDIR%" -M
    
    SETX "PLATFORMHOME" "%PLATFORMHOME%" -M
    SETX "SYSTEMHOME" "%SYSTEMHOME%" -M
    SETX "BASEHOME" "%BASEHOME%" -M
    SETX "GPENVPATH" "%GPENVPATH%" -M
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

5.goto 命令

可参考:https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/goto

  • 功能:

    将 cmd.exe 定向到批处理程序中的标记行。 在批处理程序中,此命令将命令处理定向到由标签标识的行。 找到标签后,继续处理,从下一行开始的命令开始。

  • 语法:

    goto <label>
    
    • 1
    • 参数<label>:指定在批处理程序中用作标签的文本字符串。

      为 label 指定的值必须与批处理程序中的标签匹配。 批处理程序中的标签必须以冒号 (

      声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/933567
推荐阅读
相关标签