gpt4 book ai didi

batch-file - [NT Batch]如何从用户输入的文件中获取目录?

转载 作者:行者123 更新时间:2023-12-04 07:07:28 28 4
gpt4 key购买 nike

我需要知道如何从用户输入的文件中提取目录信息,以下面的代码为例:


ECHO Drag and drop your .txt file here, after that press Enter:
SET txtfile=
SET /P txtfile=
ECHO.
CD %txtfile%

当然这不起作用,因为我没有从 %txtfile% 中提取文件路径
这里是我想要的示例输出:

C:\>将您的 .txt 文件拖放到此处,然后按 Enter:
C:\somefolder\somesubfolder\somefile.txt
C:\>按 Enter 继续...

C:\某个文件夹\某个子文件夹\>

注意它已经改变了它的工作目录

最佳答案

您可以按如下方式提取完整路径:

@echo off
setlocal
echo Drag and drop your .txt file here, after that press Enter:
set txtfile=
set /p txtfile=
echo.
for %%i in (%txtfile%) do set txtdir=%%~dpi
for %%i in (%txtfile%) do set txtfil=%%~nxi
cd /d %txtdir%
dir %txtfil%
endlocal

第一个 for 语句获取驱动器和路径,第二个获取文件名和扩展名。我用过 cd /d更改驱动器和目录,刚刚使用 setlocal/endlocal在脚本之外保留我的路径(如果您不在乎,可以删除它们)。

可以通过运行“for/?”找到全系列的~-修饰符。在命令窗口中。这确实是一个强大的命令,并且这些修饰符不限于“for”,它们也可以用于脚本的任何 %1 类型的参数。

关于batch-file - [NT Batch]如何从用户输入的文件中获取目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/905909/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com