当前位置:  开发笔记 > 开发工具 > 正文

批处理:只读取带有路径和文件名的变量的文件名

如何解决《批处理:只读取带有路径和文件名的变量的文件名》经验,为你挑选了1个好方法。

我目前正在寻找一种批处理变量的方法,只解析文件名.

例如,我从另一个应用程序传递我的批处理文件a -s参数,该应用程序随后设置为我的源变量.源文件变量通常包含以下内容:C:\ Program Files\myapp\Instance.1\Data\filetomove.ext.

我想从变量,直到第一个"\"结束读取和结果设置为一个新的变量名,但我一直没能成功使用"FOR/F"条命令.

任何帮助将非常感激!

更新:只有标准的XP或Windows 2000/2003可用...(不能假设安装了资源工具包).



1> Dave Ray..:

如果它作为脚本的参数,即%1,%2等,你可以只将文件名和扩展名提取到一个变量中,如下所示:

set FILENAME=%~nxN

其中N是参数的索引.例如,此脚本将仅回显第一个参数的文件名:

@echo off
set FILENAME=%~nx1
echo %FILENAME%


不幸的是,如果名称中包含"&"字符,则此指令似乎已损坏.我刚刚遇到了一个名为"NGC&Wii"的目录.显然,可以更改名称,但在某些情况下,您可能无法更改名称.
推荐阅读
地之南_816
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有