7

我正在尝试从命令行运行 Adob​​e AE 扩展脚本。我使用“-r”参数,我可以很好地运行脚本。但是,是否可以将参数传递给脚本?

就像,如果我从命令行运行它:

C:\>"C:\Program Files\\Adobe\\Adobe After Effects CC\\Support Files\\AfterFX" -r   "C:\Workspaces\MyAEScripts\AutomateSetup.jsx" hello

是否可以将“你好”放入我的 AutomateSetup.jsx 脚本中?我已经在谷歌上搜索了一段时间,找不到解决方案。

4

2 回答 2

6

对于遇到这个问题并且不想编写文件的人,您可以通过使用 -s 开关将参数作为脚本运行到 AfterEffects 程序来传递参数。例如,您可以执行以下操作(Windows cmd):

afterfx.exe -s "var myArg="I'm a string!"; $.evalFile("Your path to script here")"

然后,您可以从在 evalFile 命令中运行的脚本访问 myArg。有了这个,你可以只传入一个包含命令行参数的字符串,或者根据你的需要制作和设置单独的变量。另请注意,您不需要转义在脚本行中使用的引号,只需将其键入就好像它只是一个文本文件一样(但请用引号将行括起来)。

我是 After Effects 脚本的新手,所以如果这在某种程度上是错误的,请更正。

于 2014-07-25T17:15:25.833 回答
3

我的解决方法是将参数写入当前工作目录或脚本所在目录下的文件,然后在脚本中读取它们。

您可以在 Mac OS X 中使用system.callSystem('pwd').

在 Windows 下,您可以使用system.callSystem('cmd.exe /c "echo %cd%"'').

于 2014-03-31T05:37:54.417 回答