如何将具有不同扩展名的文件作为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文件运行[重复]的主要内容,如果未能解决你的问题,请参考以下文章