string - 提取变量的一部分
问题描述
我正在尝试将循环中的文件的名称提取为字符串。将许多软件输出组织在不同的文件夹中,由当前进程文件命名。
到目前为止,我得到了这个,但我无法获得变量上的字符串:
set DirecoryT=%%G
FOR /R D:\LiDAR_Data\LiDAR_DATA_EBA\ %%G in (*.laz) do (
echo Directory %DirecoryT%
set File=%DirecoryT:~29,9%
echo Processing file %File%
pause
)
pause
解决方案
试试这个:
@echo off
for /R "D:\LiDAR_Data\LiDAR_DATA_EBA\" %%G in (*.laz) do (
echo File Extension only: "%%~xG"
echo FileName with Extension: "%%~nxG"
echo FileName without Extension: "%%~nG"
echo Full path and name: "%%G"
echo Directory to file only: "%%~pG"
echo Drive and directory is: "%%~dpG"
)
pause
注意我们如何获得字符串的各个部分。有关变量处理的更多信息,只需从命令行运行for /?
并阅读帮助。
因此,根据您的尝试,更接近您真正想要的东西。
@echo off
for /R "D:\LiDAR_Data\LiDAR_DATA_EBA\" %%G in (*.laz) do (
echo FileName "%%~nxG"
echo Directory "%%~dpG"
echo Processing file "%%~nxG"
)
pause
编辑
根据您的最后一条评论,仅查看文件所在的最后一个文件夹:
@echo off
for /R "D:\LiDAR_Data\LiDAR_DATA_EBA\" %%G in (*.laz) do (
echo FileName "%%~nxG"
echo Directory "%%~dpG"
echo Processing file "%%~nxG"
for %%i in ("%%~dpG\.") do echo Last Folder "%%~nxi"
)
pause
推荐阅读
- php - laravel excel只有底部边框
- java - AndroidX SearchView 上的 NullPointer 异常
- html - 如何从带有角度的html制作弹出/视图功能
- python - 为什么即使使用 ResNet、Batchnorm、ReLU,我也会遇到爆炸性的 grad 问题?(张量流)
- android - 如何从 Android 向 Google Assistant 发送命令
- swift - 如何让用户上传不同尺寸的照片?
- reporting-services - SSRS 布局与报表生成器不同
- android - 将本机写入反应到短信而不发送它
- node.js - npm 命令未在请求中发送授权令牌 - 无法进行身份验证
- php - Wordpress - If 语句功能 - 多种帖子类型