吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1366|回复: 16
收起左侧

[学习记录] bat文件 自带的一些变量

  [复制链接]
LXGZJ237 发表于 2023-2-26 00:58
bat文件 自带的一些变量
冒号左侧是变量名,右侧输出值
拖入文件和不拖文件 一些变量的值不一样
[Shell] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
@echo off
echo %%~d1:  %~d1
echo %%~dp1:  %~dp1
echo %%~n1:  %~n1
echo %%~nx1:  %~nx1
echo %%1:  %1
echo %%~d0:  %~d0
echo %%cd%%:  %cd%
echo %%~dp0:  %~dp0
echo %%~sdp0:  %~sdp0
echo %%0:  %0
echo %%~f0: %~f0
pause


123.png

免费评分

参与人数 2吾爱币 +2 热心值 +2 收起 理由
我是一个外星人 + 1 + 1 谢谢@Thanks!
ahhk + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| LXGZJ237 发表于 2023-2-27 10:05
本帖最后由 2370177068 于 2023-3-3 12:31 编辑
focus009 发表于 2023-2-26 15:01
谢谢分享,请问具体有什么应用场景呢?

比如,Qt自动打包编译好的程序,由于编译器不一样,windeployqt的位置也不一样,所以可以用bat,然后把编译的文件托上去,自动打包到桌面。

这里的自动打包指的是:
windeployqt.exe是Qt自带的工具,用于创建应用程序发布包。 简单来说,这个工具可以自动地将某程序依赖的库、资源拷贝到其所在目录,防止程序在其他电脑上运行报找不到库的错误。

而不是 把程序所有需要的库和其他资源 打包成 单文件程序

你们用的时候记得换一下你们Qt安装的路径,我是C:\Qt\

[PowerShell] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
@echo off
if "%~n1" == "" (
        echo 不要双击,要使用拖放!!!
        echo 无视风险,仍然继续,请回车
        pause
)
:start
@rem 输入数字,设置环境变量
echo 你编译程序使用的Qt版本是?
echo 1:Qt 6.4.2        MinGW        11.2        x64
echo 2:Qt 6.4.2        MSVC2019        x64
echo 3:Qt 5.15.0        MinGW        8.1        x32
echo 4:Qt 5.15.0        MinGW        7.3        x64
echo 5:Qt 5.15.0        MSVC2019        x32
echo 6:Qt 5.15.0        MSVC2019        x64
echo 0:退出
set /p num=
if %num% == 1 goto num1
if %num% == 2 goto num2
if %num% == 3 goto num3
if %num% == 4 goto num4
if %num% == 5 goto num5
if %num% == 6 goto num6
if %num% == 0 goto exit
goto default
 
@rem Qt 6.4.2 MinGW 11.2 x64
:num1:
set PATH=C:\Qt\6.4.2\mingw_64\bin;C:\Qt\Tools\mingw1120_64\bin;%PATH%
goto ok
 
@rem Qt 6.4.2 MSVC2019 x64
:num2:
set PATH=C:\Qt\6.4.2\msvc2019_64\bin;%PATH%
goto ok
 
@rem Qt 5.15.0 MinGW 8.1 x32
:num3:
set PATH=C:\Qt\5.15.0\mingw81_32\bin;C:/Qt/Tools/mingw810_32\bin;%PATH%
goto ok
 
@rem Qt 5.15.0 MinGW 7.3 x64
:num4:
set PATH=C:\Qt\5.15.0\mingw81_64\bin;C:/Qt/Tools/mingw810_64\bin;%PATH%
goto ok
 
@rem Qt 5.15.0 MSVC2019 x32
:num5:
set PATH=C:\Qt\5.15.0\msvc2019\bin;%PATH%
goto ok
 
@rem Qt 5.15.0 MSVC2019 x64
:num6:
set PATH=C:\Qt\5.15.0\msvc2019_64\bin;%PATH%
goto ok
 
:exit
exit
 
:default:
cls
echo 您输入的不在1~6之间!
goto start
 
:ok
@rem 尝试删除桌面的项目目录
rd /Q /S "%USERPROFILE%\Desktop\%~n1"
@rem 在桌面创建项目目录
md "%USERPROFILE%\Desktop\%~n1"
@rem 复制主程序
copy "%1" "%USERPROFILE%\Desktop\%~n1\%~nx1"
@rem 使用Qt自带工具添加缺失DLL等文件
windeployqt "%USERPROFILE%\Desktop\%~n1\%~nx1"
pause
cscz110 发表于 2023-2-26 03:35
龍謹 发表于 2023-2-26 05:18
tokess 发表于 2023-2-26 06:56
大佬厉害啊
Hacking2heart 发表于 2023-2-26 08:01
谢谢分享,以前从来没注意过两种方式会导致变量有差异。
zgzxp 发表于 2023-2-26 08:55
顶顶,bat还是能做很多事
cq2002 发表于 2023-2-26 09:28
多谢您的分享。吾爱因你而精彩
cn2jp 发表于 2023-2-26 11:28
具体有什么应用场景呢?
ptime 发表于 2023-2-26 11:49
谢谢分享!!!
zxh1231 发表于 2023-2-26 12:28
非常好,学习了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-5-26 01:49

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表