运行 通过带参数的程序文件
Running file through a program with arguments
我的问题是我似乎无法通过我的程序传递参数。我不确定如何解释清楚,但在这里:
我希望能够通过带参数的自定义解释器运行 脚本文件。
例如:
AtomScript.exe main.atom -> Program runs
当我想通过批处理文件运行它时:
main.atom -> Program runs
现在,当我想在批处理文件中使用 AtomScript 命令通过程序传递参数时:
AtomScript.exe main.atom arg1 arg2 -> Program runs with arguments
参数已通过。但是当我想使用简单的 main.atom 命令来 运行 它带有参数时它不起作用:
main.atom arg1 arg2 -> Program runs without arguments
我现在不确定该怎么做。有什么建议吗?
main.atom
不是可执行文件,因此不能带任何参数
Windows 知道必须启动哪个程序(忽略任何参数)
只有直接启动可执行文件,才能定义参数(第一个是main.atom
)
例如:
C:\>assoc .txt
.txt=txtfile
C:\>ftype txtfile
txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1
assoc
定义扩展名的文件类型 ("txtfile")
ftype
定义,必须为此文件类型做什么(启动记事本)
可以看到,只有一个参数%1
(文件名(main.atom
))。
当然你可以用更多参数扩展它(需要 运行 作为管理员):
ftype txtfile=%SystemRoot%\system32\NOTEPAD.EXE %*
(这个例子没有多大意义),但我不推荐它(它只是在你的电脑上完成的)。最好使用 "official way":在批处理文件中执行与在命令行中完全相同的操作:使用所需参数启动可执行文件:
AtomScript.exe main.atom arg1 arg2
我的问题是我似乎无法通过我的程序传递参数。我不确定如何解释清楚,但在这里:
我希望能够通过带参数的自定义解释器运行 脚本文件。
例如:
AtomScript.exe main.atom -> Program runs
当我想通过批处理文件运行它时:
main.atom -> Program runs
现在,当我想在批处理文件中使用 AtomScript 命令通过程序传递参数时:
AtomScript.exe main.atom arg1 arg2 -> Program runs with arguments
参数已通过。但是当我想使用简单的 main.atom 命令来 运行 它带有参数时它不起作用:
main.atom arg1 arg2 -> Program runs without arguments
我现在不确定该怎么做。有什么建议吗?
main.atom
不是可执行文件,因此不能带任何参数
Windows 知道必须启动哪个程序(忽略任何参数)
只有直接启动可执行文件,才能定义参数(第一个是main.atom
)
例如:
C:\>assoc .txt
.txt=txtfile
C:\>ftype txtfile
txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1
assoc
定义扩展名的文件类型 ("txtfile")
ftype
定义,必须为此文件类型做什么(启动记事本)
可以看到,只有一个参数%1
(文件名(main.atom
))。
当然你可以用更多参数扩展它(需要 运行 作为管理员):
ftype txtfile=%SystemRoot%\system32\NOTEPAD.EXE %*
(这个例子没有多大意义),但我不推荐它(它只是在你的电脑上完成的)。最好使用 "official way":在批处理文件中执行与在命令行中完全相同的操作:使用所需参数启动可执行文件:
AtomScript.exe main.atom arg1 arg2