UiPath Documentation
uipath-cli
latest
false
重要 :
请注意,此内容已使用机器翻译进行了本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。

UiPath CLI 用户指南

迁移:命令映射

每个旧版uipcli动词及其等效uip动词。旧版条目反映为2025.10及更早版本记录的公共uipcli表面; uip列与已发布的参考页面匹配。

如何阅读此页面。行按旧版动词系列( packagejobtestassetsolutionrun )分组。每行都包含一个分类:

  • 1:1 — 直接重命名;新标志设置的情况足够接近,因此机器人端口可以正常工作。
  • 2 个步骤/ N 个步骤— 一个旧版动词映射到多次uip调用。
  • 已删除 —替换:… — 旧版动词没有直接后缀; “替换”列会告知您获得相同结果的习惯用新 CLI 流程。

有关每个动词内标志级别的详细信息,请参阅标志重命名。有关适用于每个动词的基础身份验证/输出更改,请参阅重大变更

旧版命令uip 等效项注意
uipcli package pack <project>uip rpa pack <project>1:1。新的标志表面使用短横线命名空间; --outputType--output-type--autoVersion--auto-version等。 uip rpa命令会调用.NET 支持的 Studio 打包程序 — 运行程序仍需要可用的.NET 运行时。请参阅uip rpa pack
uipcli package analyze <project>uip rpa analyze <project> --governance-file-path <policy>1:1。 --governanceFilePath 变为--governance-file-path (短横线命名)。工作流分析器规则不变。.NET 后端适用,与rpa pack相同。请参阅UIP RPA 分析
uipcli package deploy <path> <url> <tenant>uip or packages upload <path> Then uip or processes create --name <n> --package-key <k> --package-version <v> --folder-path <path>2 个步骤。旧版部署可在一次调用中上传.nupkg创建流程;新的 CLI 解决了这些问题。请参阅uip 或包上传uip 或流程创建
uipcli package restore <project>uip rpa restore <project> [outputPath]1:1。还原 NuGet 包依赖项;通过与旧版相同的标志支持离线配置和自定义 NuGet 配置。.NET 后端适用。请参阅UIP RPA 还原

包 Pack

# Legacy
uipcli package pack "C:\proj\project.json" -o "C:\dist" \
    --outputType Process --autoVersion \
    --traceLevel Information

# uip
uip rpa pack ./proj --output-type Process --auto-version
# Legacy
uipcli package pack "C:\proj\project.json" -o "C:\dist" \
    --outputType Process --autoVersion \
    --traceLevel Information

# uip
uip rpa pack ./proj --output-type Process --auto-version

有关完整标志列表,请参阅uip rpa 包。该工具包含旧版 CLI 使用的同一个 Studio 打包程序,因此输出格式和项目支持相同。

包分析

# Legacy
uipcli package analyze "C:\proj\project.json" \
    --governanceFilePath "C:\policy.json" \
    --resultPath "C:\result.json" \
    --stopOnRuleViolation

# uip
uip rpa analyze ./proj \
    --governance-file-path ./policy.json \
    --result-path ./result.json \
    --stop-on-rule-violation
# Legacy
uipcli package analyze "C:\proj\project.json" \
    --governanceFilePath "C:\policy.json" \
    --resultPath "C:\result.json" \
    --stopOnRuleViolation

# uip
uip rpa analyze ./proj \
    --governance-file-path ./policy.json \
    --result-path ./result.json \
    --stop-on-rule-violation

包部署

这一行捕获了每个管道端口。旧版deploy是一次性“上传-创建”活动; uip会将其拆分为两个明确的步骤,因此只需上传一次包并绑定到多个文件夹。

# Legacy — upload and create a process in one call
uipcli package deploy "C:\pkg\InvoiceProcessing.1.0.3.nupkg" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution" \
    -o "Shared" \
    --processName "InvoiceProcessing" \
    --entryPointsPath "Main.xaml"

# uip — upload, then create the process
uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant TenantName

uip or packages upload ./InvoiceProcessing.1.0.3.nupkg
#    response includes "body": "InvoiceProcessing:1.0.3"

uip or processes create \
    --name InvoiceProcessing \
    --package-key InvoiceProcessing \
    --package-version 1.0.3 \
    --folder-path Shared \
    --entry-point Main.xaml
# Legacy — upload and create a process in one call
uipcli package deploy "C:\pkg\InvoiceProcessing.1.0.3.nupkg" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution" \
    -o "Shared" \
    --processName "InvoiceProcessing" \
    --entryPointsPath "Main.xaml"

# uip — upload, then create the process
uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant TenantName

uip or packages upload ./InvoiceProcessing.1.0.3.nupkg
#    response includes "body": "InvoiceProcessing:1.0.3"

uip or processes create \
    --name InvoiceProcessing \
    --package-key InvoiceProcessing \
    --package-version 1.0.3 \
    --folder-path Shared \
    --entry-point Main.xaml

注意:

  • 旧版中的位置<orchestrator_url><orchestrator_tenant>将替换为uip login中的会话上下文(以及每次调用时覆盖可选的-t, --tenant )。它们永远不会在uip中显示为位置参数。
  • 旧版--processName是已创建流程的自定义显示名称。在uip中,等效项是--name上的processes create ,而不是--process (它不存在)。
  • 旧版--processNames <csv> (25.10 中的多流程批量创建)没有直接等效的功能;编写行循环的脚本,或阅读“解决方案”以获取推荐的多流程流。
  • 旧版--entryPointsPath (CSV) 在uip or processes create上变为--entry-point (单个路径);对于多入口点包,每个入口点运行一次processes create

包还原

# Legacy
uipcli package restore "C:\proj" \
    --restoreFolder "C:\deps" \
    --nugetConfigFilePath "C:\NuGet.Config"

# uip
uip rpa restore ./proj ./deps
# Legacy
uipcli package restore "C:\proj" \
    --restoreFolder "C:\deps" \
    --nugetConfigFilePath "C:\NuGet.Config"

# uip
uip rpa restore ./proj ./deps

作业

旧版命令uip 等效项注意
uipcli job run <processName> <url> <tenant>uip or jobs start <process-key>一对一了解意图;身份是 GUID,而不是名称。旧版 CLI 将流程版本名称作为位置参数;新的 CLI 接受uip or processes list返回的流程密钥 (GUID)。对旧版-w true + -W <timeout>行为使用--wait-for-completion 。请参阅uip 或作业开始
# Legacy
uipcli job run "InvoiceProcessing" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution OR.Jobs" \
    -o "Shared" \
    -i "C:\input.json" \
    -w true -W 3600

# uip — resolve the name to a key, then start with wait-for-completion
PROCESS_KEY=$(uip or processes list --folder-path Shared \
    --name InvoiceProcessing \
    --output-filter "Data[0].Key" \
    --output plain)

uip or jobs start "$PROCESS_KEY" \
    --input-file ./input.json \
    --wait-for-completion \
    --timeout 3600
# Legacy
uipcli job run "InvoiceProcessing" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution OR.Jobs" \
    -o "Shared" \
    -i "C:\input.json" \
    -w true -W 3600

# uip — resolve the name to a key, then start with wait-for-completion
PROCESS_KEY=$(uip or processes list --folder-path Shared \
    --name InvoiceProcessing \
    --output-filter "Data[0].Key" \
    --output plain)

uip or jobs start "$PROCESS_KEY" \
    --input-file ./input.json \
    --wait-for-completion \
    --timeout 3600

标志级详细信息:

  • 旧版-i, --input_path <file>uip提供两种替代方案: --input-arguments '<json>'用于内联 JSON, --input-file <path>用于文件有效负载。它们互斥。
  • 旧版-j, --jobscount <n>--jobs-count <n>
  • 旧版-P, --priority <Low|Normal|High>--job-priority <Low|Normal|High>
  • 旧版-r, --robots <csv> → 无直接等效项(旧版中的“仅限传统文件夹”概念)。目标为具有--machine-keys <csv> (GUID) 的计算机或具有--user-keys <csv> (GUID) 的用户。
  • 旧版-f, --fail_when_job_fails (默认true )→ 如果等待的作业结束Faulted ,新版 CLI 始终退出1 ;无法选择退出。
  • 旧版-R, --result_path <file> → 新的 CLI 将作业信封打印到标准输出;使用> result.json进行重定向,或使用--output-filter提取特定字段。
  • 旧版-b, --job_type <Unattended|NonProduction>--runtime-type <Unattended|Headless|Serverless|NonProduction|Development|TestAutomation>
旧版命令uip 等效项注意
uipcli test run <url> <tenant> -s <testset>uip tm testsets run --test-set-key <key> Then uip tm wait --execution-id <id> Then uip tm report get --execution-id <id>3 个步骤(启动 → 等待 → 验证)。新的 CLI 将“触发运行”、“阻止运行”与“读取结果”分开,因此 CI 脚本可以在每个运行平台上清晰地分支。请参阅运行 uip tm 测试集。新动词作为uip tm testsets run存在于testsets资源中,而不是存在于executions资源中(没有uip tm executions run )。
uipcli test run <url> <tenant> -P <project.json> (打包 + 测试项目)uip rpa packuip or packages upload → 在 Test Manager 中编写测试集 → uip tm testsets runN 步骤。“打包、部署、运行其测试”的旧版一次性流程分为rpaortm工具。编写测试集通常是在 Test Manager 的网页用户界面中完成的一次性设置。
uipcli test parallel <url> <tenant> --testsConfigurationFilePath <file>没有直接等效项 — 遍历uip tm testsets run调用已删除 — 替换:使用uip tm testsets run编写独立测试集的并行启动脚本(每个测试集返回一个ExecutionId ),然后每次执行编写一个uip tm wait 。旧版parallel动词的测试项目驱动程序(已在内部调用uipcli test run )没有对应项;新模型假定测试集已在 Test Manager 中创作。

测试运行(单个测试集)

# Legacy
uipcli test run \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.TestSets OR.TestSetExecutions" \
    -o "Shared" \
    -s "Smoke Suite" \
    --out junit \
    --result_path "C:\results.xml" \
    --timeout 1800

# uip — three verbs, clean exit-code branching
EXECUTION_ID=$(uip tm testsets run \
    --test-set-key DEMO:10 \
    --output-filter "Data.ExecutionId" \
    --output plain)

if ! uip tm wait --execution-id "$EXECUTION_ID" --project-key DEMO --timeout 1800; then
    case $? in
        2) echo "timeout" >&2; exit 2 ;;
        *) echo "wait failed" >&2; exit 1 ;;
    esac
fi

FAILED=$(uip tm report get --execution-id "$EXECUTION_ID" --project-key DEMO \
    --output-filter "Data.Failed" --output plain)

if [ "$FAILED" -gt 0 ]; then
    uip tm result download --execution-id "$EXECUTION_ID" --project-key DEMO \
        --destination ./results.xml
    exit 1
fi
# Legacy
uipcli test run \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.TestSets OR.TestSetExecutions" \
    -o "Shared" \
    -s "Smoke Suite" \
    --out junit \
    --result_path "C:\results.xml" \
    --timeout 1800

# uip — three verbs, clean exit-code branching
EXECUTION_ID=$(uip tm testsets run \
    --test-set-key DEMO:10 \
    --output-filter "Data.ExecutionId" \
    --output plain)

if ! uip tm wait --execution-id "$EXECUTION_ID" --project-key DEMO --timeout 1800; then
    case $? in
        2) echo "timeout" >&2; exit 2 ;;
        *) echo "wait failed" >&2; exit 1 ;;
    esac
fi

FAILED=$(uip tm report get --execution-id "$EXECUTION_ID" --project-key DEMO \
    --output-filter "Data.Failed" --output plain)

if [ "$FAILED" -gt 0 ]; then
    uip tm result download --execution-id "$EXECUTION_ID" --project-key DEMO \
        --destination ./results.xml
    exit 1
fi

标志级注释:

  • 旧版-s, --testset <name>采用显示名称;新的--test-set-key <key>接受 Test Manager 密钥(格式为PROJECT:NN )。使用uip tm testsets list --project-key <key>进行查找。
  • 也存在旧版-t, --testsetkey <key> (较新的旧版别名)— 这些值直接移植到新的--test-set-key
  • 旧版--out junit|uipath将成为新的uip tm result download --output-format junit (默认为 JUnit;还支持 UiPath 原生 XML)。
  • 旧版--attachRobotLogs → 运行后通过uip tm attachment download --execution-id <id>附加工件。
  • 旧版--retryCount <n>uip tm executions retry --execution-id <id>仅重新运行已完成的执行的失败案例。启动时没有自动重试标志;使用上面的report get退出分支将其脚本化。

测试并行

没有反映旧版test paralleluip动词。最接近的习惯用法是 Shell 循环,该循环同时启动多个uip tm testsets run调用,捕获每个ExecutionId ,然后等待每个 :

# Launch in parallel (bash)
EXEC1=$(uip tm testsets run --test-set-key DEMO:10 --output-filter Data.ExecutionId --output plain) &
EXEC2=$(uip tm testsets run --test-set-key DEMO:11 --output-filter Data.ExecutionId --output plain) &
wait

# Then wait on each
uip tm wait --execution-id "$EXEC1" --project-key DEMO --timeout 1800 &
uip tm wait --execution-id "$EXEC2" --project-key DEMO --timeout 1800 &
wait
# Launch in parallel (bash)
EXEC1=$(uip tm testsets run --test-set-key DEMO:10 --output-filter Data.ExecutionId --output plain) &
EXEC2=$(uip tm testsets run --test-set-key DEMO:11 --output-filter Data.ExecutionId --output plain) &
wait

# Then wait on each
uip tm wait --execution-id "$EXEC1" --project-key DEMO --timeout 1800 &
uip tm wait --execution-id "$EXEC2" --project-key DEMO --timeout 1800 &
wait

旧版--testsConfigurationFilePath架构(列出每个项目的路径及其测试集)没有uip对应项;从 CI 矩阵或测试集密钥的简单 shell 列表驱动循环。

资产

旧版命令uip 等效项注意
uipcli asset deploy <csv> <url> <tenant>在每行uip resource assets create <name> <value>上循环已移除 — 替换:在 Shell 循环中迭代 CSV,并每行调用create 。新 CLI 不提供一次性 CSV 部署;请参阅UIP 资源资产
uipcli asset delete <csv> <url> <tenant>在每行uip resource assets delete <key>上循环已移除 — 替换:按键迭代和删除。delete接受资产 GUID,而不是名称 — 首先使用uip resource assets list --folder-path <path>将名称解析为键。
# Legacy — bulk CSV
uipcli asset deploy "C:\assets.csv" "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Assets" -o "Shared"

# uip — script the loop
# CSV columns: name,type,value,description
while IFS=, read -r NAME TYPE VALUE DESCRIPTION; do
    [ "$NAME" = "name" ] && continue    # skip header
    uip resource assets create "$NAME" "$VALUE" \
        --folder-path Shared \
        --type "$TYPE" \
        --description "$DESCRIPTION"
done < assets.csv
# Legacy — bulk CSV
uipcli asset deploy "C:\assets.csv" "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Assets" -o "Shared"

# uip — script the loop
# CSV columns: name,type,value,description
while IFS=, read -r NAME TYPE VALUE DESCRIPTION; do
    [ "$NAME" = "name" ] && continue    # skip header
    uip resource assets create "$NAME" "$VALUE" \
        --folder-path Shared \
        --type "$TYPE" \
        --description "$DESCRIPTION"
done < assets.csv
备注:

旧版中的凭据类型资产使用username::password值形式。使用uip resource assets create时,凭据值格式为username:password (单冒号),而密码需要--credential-store-key <guid> 。请参阅UIP 资源资产 — 创建

解决方案

旧版命令uip 等效项注意
uipcli solution pack <path>uip solution pack <solutionPath> <outputPath>1:1 解读意图。两代中的输出都是.zip (包含内部.nupkg文件);参数形式从-o更改为位置输出目录。
uipcli solution analyze <path>uip rpa analyze <project> 每个项目N 步骤。在解决方案中的每个项目上运行分析器;没有单个uip solution analyze动词。
uipcli solution restore <path>uip rpa restore <project> 每个项目N 步骤。solution analyze相同的模式。
uipcli solution upload-package <zip>uip solution publish <zip>1:1。新名称为publish ;行为(上传到租户解决方案订阅源)不变。
uipcli solution download-package <name> <version>无直接等效项已删除 — 替换:使用uip or packages download <key>下载基础.nupkg包,或通过 Orchestrator REST API 获取已发布的解决方案记录。
uipcli solution delete-package <name> <version>uip solution packages delete <packageName> <packageVersion>1:1。
uipcli solution download-config <name>uip solution deploy config get <package-name> [--package-version <v>] [-d <path>]1:1。
uipcli solution deploy <...>uip solution deploy run --name <n> --package-name <n> --package-version <v> --folder-name <n> [--folder-path <path>]一对一了解意图;标志名称已更改。--name部署名称,而不是包名称。请参阅first-pipeline.md — 步骤 3
uipcli solution deploy-activate <...>uip solution deploy activate <deployment-name>1:1。
uipcli solution deploy-uninstall <...>uip solution deploy uninstall <deployment-name>1:1。
# Legacy — pack + upload + deploy, one verb each
uipcli solution pack "C:\my-solution" \
    -o "C:\dist" \
    -v 1.2.0
uipcli solution upload-package "C:\dist\my-solution.1.2.0.zip" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders"
uipcli solution deploy "..." "..."

# uip — publish replaces upload-package; positional --version in pack
uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET --tenant TenantName
uip solution pack ./my-solution ./dist --version 1.2.0
uip solution publish ./dist/my-solution.1.2.0.zip
uip solution deploy run \
    --name "my-solution-deployment" \
    --package-name my-solution \
    --package-version 1.2.0 \
    --folder-name MySolution \
    --folder-path Shared
# Legacy — pack + upload + deploy, one verb each
uipcli solution pack "C:\my-solution" \
    -o "C:\dist" \
    -v 1.2.0
uipcli solution upload-package "C:\dist\my-solution.1.2.0.zip" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders"
uipcli solution deploy "..." "..."

# uip — publish replaces upload-package; positional --version in pack
uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET --tenant TenantName
uip solution pack ./my-solution ./dist --version 1.2.0
uip solution publish ./dist/my-solution.1.2.0.zip
uip solution deploy run \
    --name "my-solution-deployment" \
    --package-name my-solution \
    --package-version 1.2.0 \
    --folder-name MySolution \
    --folder-path Shared

请参阅您的第一个管道,以获取包含每个步骤说明的演练。

运行

旧版命令uip 等效项注意
uipcli run <arguments.json>无直接等效项已移除 — 替换:将管道步骤重写为 Shell 脚本,该脚本直接使用标志调用uip 。旧版run动词使用一个 JSON 文件,该文件对完整的uipcli <verb> <args>调用进行序列化(由隐藏的--captureCommandToJsonFile标志生成); uip未发布等效项。
备注:

CLI 1.x 没有公开用于批量参数重播的通用--from-file标志。如果您的管道依赖此模式(在旧版captureCommandToJsonFile + uipcli run工作流中很常见),请将 JSON 有效负载转换为直接uip调用。

没有等效旧版命令

这些uip动词在旧版 CLI 中没有对应项;它们开启了单独使用uipcli无法实现的工作流。这些功能都不需要迁移——它们是新功能。

  • uip loginuip login tenant list/setuip logoutuip login status — 完整会话管理。
  • uip or folders *uip or machines *uip or users *uip or roles *uip or licenses *uip or sessions *uip or audit-logs *uip or calendars *uip or credential-stores *uip or feeds *uip or settings * — 完整的 Orchestrator 管理员界面。
  • uip or jobs list / get / stop / restart / resume / logs / traces / healing-data / historyuip or processes list / get / edit / update-version / rollbackuip or packages list / get / versions / entry-points / download — 旧版未公开的内省动词。
  • uip resource buckets / bucket-files / libraries / queues / queue-items / triggers / webhooks — Orchestrator 资源 CRUD。
  • uip agent *uip codedagent *uip codedapp *uip flow *uip maestro *uip api-workflow *uip df *uip insights *uip traces *uip docsai *uip vss * — 全新的界面。
  • uip tools *uip skills *uip mcpuip completion — 主机级别管理。

另请参阅

  • 标记重命名— 使用映射规则在uipcliuip之间更改名称的每个标记。
  • 重大变更— 重命名背后的语义更改(身份验证、标准输出格式、退出代码)。
  • 管道示例— Azure DevOps 和 Jenkins 管道之前/之后。
  • 参考索引— 将所有uip工具和动词集成到一个位置。

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新