问题描述
我有一个已知的文件类型(混合文件),我想将相关的应用程序路径写入.txt文件(与批处理脚本位于同一文件夹中)。
例如,对于一个.txt文件,我正在使用:
ftype blendfile >> "%~dp1BlenderPath.txt"
哪个给我输出:
blendfile="C:\Program Files\Blender Foundation\Blender 2.83\blender.exe" "%1"
但是我只希望将"C:\Program Files\Blender Foundation\Blender 2.83\blender.exe"
部分写到文本文件中。
我该如何实现?
(编辑:编辑过的问题仅针对我要查找的文件类型路径)
解决方法
对于blendfile,请尝试:
@echo off
for /f tokens^=1^,2delims^=^=^" %%i in ('ftype blendfile') do echo "%%~j"
ftype
存储各种格式,因此该特定项目不适用于所有ftype
条目。
因此,要获取所有ftype值,您需要一点技巧。在我有时间的情况下,这是我能做的最好的事情:
@echo off
setlocal enabledelayedexpansion
(for /f tokens^=1^,2*delims^=^=^/^" %%i in ('ftype') do (
set "str=%%~j"
set "str=!str: %%1=!"
set str="!str!"
set "str=!str: "="!"
echo !str!
)
)>"%~dp1BlenderPath.txt"