首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在azure批处理中创建.ps1启动任务时出现意外令牌错误

在azure批处理中创建.ps1启动任务时出现意外令牌错误
EN

Stack Overflow用户
提问于 2016-12-06 11:13:02
回答 2查看 560关注 0票数 0

我试图在批处理StartTask中运行一个powershell脚本,但遇到了一个错误。下面是我在创建池startTask时出错的代码:

代码语言:javascript
复制
def create_pool(batch_service_client, pool_id, resource_files, node_os_family):
    print('Creating pool [{}]...'.format(pool_id))
    task_commands = [
        'copy $AZ_BATCH_TASK_WORKING_DIR/python_tutorial_task.py $AZ_BATCH_NODE_SHARED_DIR',
        'powershell.exe -command set-executionpolicy remotesigned',
        "powershell.exe -command $AZ_BATCH_NODE_STARTUP_DIR" + "\\" + "PrepPython.ps1",
        'pip install azure-batch',
        'pip install azure-storage',
        'pip install cryptography']
    ... ...

然后,我将这些命令包装成一行,前面附加了"cmd.exe /c“。但是这不起作用,并不断地引发以下错误:

代码语言:javascript
复制
At line:1 char:27
+ $AZ_BATCH_NODE_STARTUP_DIR\PrepPython.ps1
+                           ~~~~~~~~~~~~~~~
Unexpected token '\PrepPython.ps1' in expression or statement.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordEx 
   ception
    + FullyQualifiedErrorId : UnexpectedToken
... ...

有人对此有想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-08 16:23:46

似乎您正在Windows上运行命令。您的环境变量是不正确的--您使用的是Linux $VAR格式,而它们应该是%VAR%格式。另外,您的目录分隔符斜杠看起来是混合的(例如,您的第一个copy命令)。

票数 0
EN

Stack Overflow用户

发布于 2016-12-07 21:37:07

我遇到了一个类似的问题。下面是我如何组成“命令”值,但使用您的变量:

代码语言:javascript
复制
cmd /c powershell.exe %AZ_BATCH_NODE_STARTUP_DIR%\PrepPython.ps1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40993981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档