吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1128|回复: 8
收起左侧

[已解决] 批处理截取字符串这行命令我做错了什么?

[复制链接]
Cairl 发表于 2021-11-24 01:58
本帖最后由 Cairl 于 2021-11-25 12:37 编辑

这是代码
[Asm] 纯文本查看 复制代码
@echo off
for /f "skip=3 tokens=3" %%a in ('dir /a /-c %1') do ( set size1=%%a )
echo %size1%
pause


是一个拖入文件就能获取文件大小的批处理

我想用for截取dir命令下的这一行
QQ截图20211124015601.png

可是这行代码实际运行起来,获得的却是下面一行
QQ截图20211124015614.png


请问各位我这是哪里错了?
QQ截图20211124015614.png

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

zljiscx 发表于 2021-11-24 06:51
对FOR /F的理解不够透彻。你的这条FOR命令是跳过DIR命令返回值的前3行,从第4行开始处理。%%a的输出结果共有3个,依次是7851583、7851583、252812505088。SET命令等于是执行了3次,最后一次赋给size1的值是252812505088。你最终得到的值当然就是这个咯。要精确定位就要对DIR命令的返回结果作筛选。如果仅仅只是要达到你说的这个效果,其实一个ECHO命令就够了,不用那么复杂。
[Asm] 纯文本查看 复制代码
@echo off
echo %~z1
pause
 楼主| Cairl 发表于 2021-11-24 12:28
zljiscx 发表于 2021-11-24 06:51
对FOR /F的理解不够透彻。你的这条FOR命令是跳过DIR命令返回值的前3行,从第4行开始处理。%%a的输出结果共 ...

可是单独一行 echo %~z1 不能把文件夹拖进去,拖进去会现实4096不知道为什么
 楼主| Cairl 发表于 2021-11-24 12:30
zljiscx 发表于 2021-11-24 06:51
对FOR /F的理解不够透彻。你的这条FOR命令是跳过DIR命令返回值的前3行,从第4行开始处理。%%a的输出结果共 ...

而且我把skip这个参数去掉,得到的结果还是不会变,这令我很苦恼啊..
 楼主| Cairl 发表于 2021-11-24 17:14
cubature 发表于 2021-11-24 13:24
for /f命令貌似只能跳过前面的行,不能跳过后面的行。所以最后一行是一定会被执行处理的

试试往in后的命 ...

这个不太明白,不知道可以麻烦写出来吗?
zljiscx 发表于 2021-11-25 00:32
Cairl 发表于 2021-11-24 12:28
可是单独一行 echo %~z1 不能把文件夹拖进去,拖进去会现实4096不知道为什么

还有文件夹啊?还以为只有文件呢。那么拖入文件夹你想得到的是什么呢?文件夹里所有文件的总大小吗?
zljiscx 发表于 2021-11-25 02:19
Cairl 发表于 2021-11-24 12:30
而且我把skip这个参数去掉,得到的结果还是不会变,这令我很苦恼啊..

这不是单单去掉skip参数就能解决的,看来你并没有理解我说的,还是好好解读一下FOR /?吧。
[Asm] 纯文本查看 复制代码
@echo off
for /f "tokens=3" %%a in ('dir  /a /-c %1^|find "文件"') do set size1=%%a
echo %size1%
pause

看看这样是你想要的吗?如果拖入目录的子目录下的所有文件都要统计的话,dir命令就加个/s参数。
 楼主| Cairl 发表于 2021-11-25 12:36
zljiscx 发表于 2021-11-25 02:19
这不是单单去掉skip参数就能解决的,看来你并没有理解我说的,还是好好解读一下FOR /?吧。
[mw_shl_code ...

感谢!解决了燃眉之急
 楼主| Cairl 发表于 2021-11-25 12:37
cubature 发表于 2021-11-24 22:04
in ('dir /a /-c %1')改成in ('dir /a /-c %1 | find "个文件"'),然后把skip参数去掉。

思路就是只找 ...

感谢!解决了燃眉之急
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-25 18:50

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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