如何将具有不同扩展名的文件作为BAT文件运行[重复]

Posted

技术标签:

【中文标题】如何将具有不同扩展名的文件作为BAT文件运行[重复]【英文标题】:How to run file with different extension as BAT file [duplicate] 【发布时间】:2017-01-02 18:23:05 【问题描述】:

想象一下具有自定义(非保留)扩展名的文本文件

myFileSayHello.myExtension

其中包含例如:

@echo on
@echo "Hello"
@pause

如何使用 cmd 作为 bat 文件运行它?

cd %pathToFile%    
start myFileSayHello.myExtension

上面的代码不起作用,资源管理器要求选择程序打开.myExtension

我怎样才能做到 .myExtension 在 cmd 中的行为类似于 .bat

【问题讨论】:

cmd /k < Anyfile.ext @Noodles,我猜这对于几个命令(如for)都会失败,因为.ext 文件没有被解析为批处理文件,而是作为键入的命令行... 然而,它可以做一个批处理文件可以做的所有事情,除了 %errorlevel%。我不使用批处理文件。我复制并粘贴行。 不,它不能 - 分别查看带有一个或两个 % 符号的 for variable references 和批处理文件;或setlocal/endlocal,将被完全忽略,或exit /B,标签... @aschipfl:this answer 详细描述了以这种方式执行的文本文件与真正的 .BATch 文件之间的差异。 【参考方案1】:

这是命令提示符中需要管理权限的一种方式:

assoc .myExtension=myExtensionfile
ftype myExtensionfile="%1" %*
set "PATHEXT=%PATHEXT%;.myExtension"
setx PATHEXT "%PATHEXT%;.myExtension"

cd /D "%pathToFile%"

myFileSayHello

修改后的PATHEXT 存储用于当前用户的上下文,除非您将/M 附加到setx 命令行。

【讨论】:

感谢您的回答。由于某种原因,Java 不允许我清除 %temp% 文件夹(甚至是自己创建的 txt 文件)。 对不起,我无法关注你...

以上是关于如何将具有不同扩展名的文件作为BAT文件运行[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何将输出文件命名为与输入文件相同但视频转换后的扩展名不同? [重复]

如何让bat文件一直循环执行

每隔10秒运行一次BAT文件?

如何在不同目录中运行bat文件

.bat如何才能后台运行

兔子--bat文件