Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 从批处理中获取文件类型说明_Batch File_Cmd - Fatal编程技术网

Batch file 从批处理中获取文件类型说明

Batch file 从批处理中获取文件类型说明,batch-file,cmd,Batch File,Cmd,我可以使用批处理命令获取文件名和扩展名: 对于(.)中的%%i,执行回显“%%~xi” 然而,我想得到描述符 例如:对于一个文件“foo.txt”,我得到.txt作为返回参数。。我想改为获取“TXT文件(.TXT)” 谢谢, 高瑟姆 (使答案有效的更多符号)assoc命令显示的类型不是描述性的。您可以通过以下方式定义自己的类型: @echo off setlocal EnableDelayedExpansion rem Define the desired types set type[.tx

我可以使用批处理命令获取文件名和扩展名:

对于(.)中的%%i,执行回显“%%~xi”

然而,我想得到描述符

例如:对于一个文件“foo.txt”,我得到.txt作为返回参数。。我想改为获取“TXT文件(.TXT)”

谢谢, 高瑟姆


(使答案有效的更多符号)

assoc命令显示的类型不是描述性的。您可以通过以下方式定义自己的类型:

@echo off
setlocal EnableDelayedExpansion

rem Define the desired types
set type[.txt]=TXT File (.txt)
set type[.doc]=Any description you want (.doc)
etc...

for %%i in (.) do echo File %%i: !type[%%~Xi]!

令人惊叹的!那奏效了。。是否有一种快捷方式可以获取多种类型的关联?例如.txt、.docx等??谢谢..如果你用快捷方式表示一行是的-有一种方法:
assoc | findstr/i/c:.txt=“/c:.doc=“
@Gautham-或者更简单地说:`assoc | findstr/il.txt=.docx=“。/L选项对于强制进行文本匹配而不是正则表达式非常重要。感谢Npcmaka、Aacini和dbenham!
@echo off
setlocal EnableDelayedExpansion

rem Define the desired types
set type[.txt]=TXT File (.txt)
set type[.doc]=Any description you want (.doc)
etc...

for %%i in (.) do echo File %%i: !type[%%~Xi]!