全部產品
Search
文件中心

MaxCompute:使用雲命令列(odpscmd)串連

更新時間:Jun 03, 2026

MaxCompute基於阿里雲雲命令列,為您提供雲上用戶端環境,您無需手動安裝即可通過雲命令列工具使用用戶端(odpscmd)。本文為您介紹MaxCompute的雲命令列(odpscmd)的使用注意事項和簡單樣本。

前提條件

若通過RAM使用者登入MaxCompute的雲命令列(odpscmd),請確認RAM使用者已具備AliyunCloudShellFullAccess許可權。具體授權操作,請參見存取控制RAM

使用限制

說明

雲命令列(Cloud Shell)是阿里雲提供的網頁版命令列工具,MaxCompute基於阿里雲雲命令列,提供了雲上用戶端環境,您無需手動安裝即可通過雲命令列工具使用用戶端(odpscmd)。關於雲命令列的詳情請參見什麼是雲命令列?

  • 雲命令列限制

    限制項

    限制說明

    虛擬機器數量

    無論開啟多少會話視窗,雲命令列在同一時刻只會建立一台虛擬機器。所有會話視窗都會自動連接到此虛擬機器上。

    會話視窗

    最多可以開啟5個會話視窗。

    無操作銷毀

    無互動式操作30分鐘或者關閉所有會話視窗將視為終止操作,在終止操作後15分鐘雲命令列將銷毀此台虛擬機器。再次啟動雲命令列時,會為您建立一台全新的虛擬機器。

    到期銷毀

    雲命令列建立的虛擬機器只有1小時使用到期日,到期後雲命令列將會立即銷毀此台虛擬機器。再次啟動雲命令列時,會為您建立一台全新的虛擬機器。

    檔案儲存體

    雲命令列為您掛載 10 GB的臨時儲存空間,您可以將您的檔案存放在/home/shell目錄,但會隨著虛擬機器的銷毀而被重設。您可以選擇掛載儲存空間來實現儲存,每次雲命令列啟動時會為您自動載入。

    禁止使用

    長時間使用以及計算或網路密集型等惡意進程將不受支援,並可能會導致會話在沒有任何警告的情況下被終止甚至被禁用。

  • 地區限制

    目前僅華東1(杭州)、華東2(上海)、華北2(北京)、華南1(深圳)地區支援使用雲命令列串連MaxCompute。

注意事項

在任意地區啟動MaxCompute的雲命令列(odpscmd),雲命令列的服務和臨時儲存服務預設都部署在上海地區,若您的專案在其他地區,使用此功能會存在資料安全風險,請謹慎使用。

進入雲命令列(odpscmd)環境

  1. 登入MaxCompute控制台,在左上方選擇地區。

  2. 工作区 > 项目管理頁面單擊右上方的命令行

  3. 项目选择對話方塊中選擇要管理的專案,單擊确定

    說明

    如果介面彈出掛載NAS相關提示,您可以根據需要進行掛載。具體操作,請參見(可選)掛載NAS

    雲命令列(odpscmd)載入完成後,樣本輸出如下。

    inflating: odpscmd_pub/plugins/cupid/lib/jackson-core-2.9.5.jar
    inflating: odpscmd_pub/plugins/cupid/lib/odps-console-cupid-public-0.43.1-public.jar
    inflating: odpscmd_pub/plugins/cupid/plugin.ini
    inflating: odpscmd_pub/plugins/volume2/lib/odps-console-volume2-0.43.1-public.jar
    inflating: odpscmd_pub/plugins/volume2/lib/odps-sdk-volumefs-0.43.1-public.jar
    inflating: odpscmd_pub/plugins/volume2/lib/hadoop-shaded-protobuf_3_7-1.1.1.jar
    inflating: odpscmd_pub/plugins/volume2/lib/hadoop-annotations-3.3.3.jar
    inflating: odpscmd_pub/plugins/volume2/lib/hadoop-auth-3.3.3.jar
    inflating: odpscmd_pub/plugins/volume2/lib/hadoop-common-3.3.3.jar
    /home/shell
    Aliyun ODPS Command Line Tool
    Version 0.43.1-public
    @Copyright 2020 Alibaba Cloud Computing Co., Ltd. All rights reserved.
    Connecting to http://service.odps.aliyun.com/api, project: xxx
    Endpoint: http://service.odps.aliyun.com/api
    Project: xxx
    Schema: default
    Quota: default in region N/A
    Timezone: Asia/Shanghai
    Connected!
    xxx (default)>

(可選)掛載NAS

雲命令列為您掛載10 GB的臨時儲存空間,但會隨著虛擬機器的銷毀而被重設,您可以選擇掛載儲存空間來實現儲存,每次雲命令列啟動時,為您自動載入。掛載NAS的操作如下。

MaxCompute Cloud CMD視窗,單擊image.png選擇掛載儲存空間,綁定NAS儲存空間。

說明

掛載NAS會產生對應的NAS儲存費用,使用完成後,可及時解除綁定儲存空間。關於NAS儲存費用詳情,請參見計費概述

使用雲命令列(odpscmd)

MaxCompute的雲命令列(odpscmd)支援所有本地用戶端可執行檔SQL命令。本文通過運行SQL命令和資料轉送為例,展示雲命令列(odpscmd)的使用。

運行SQL命令

建立表result_table1,命令樣本如下。

CREATE TABLE IF NOT EXISTS result_table1 (
 education STRING comment '教育程度',
 num BIGINT comment '人數');

建立完成後您可以查看已建立的表,命令樣本如下。

SHOW TABLES;

資料轉送

  • 檔案上傳

    1. 單擊image.png,選擇上传,將本地檔案上傳,本文以result.txt檔案為例。

      上傳完成後,Ctrl+c退出雲命令列(odpscmd)環境,執行ll查看是否上傳成功和檔案路徑。

      shell@Alicloud:~$ ll
      total 24
      drwxr-xr-x 3 shell shell 4096 Jul 19 08:21 ./
      drwxr-xr-x 1 root  root  4096 Jul 19 08:00 ../
      -rw------- 1 shell shell  292 Jul 19 08:22 .bash_history
      drwx------ 3 shell shell 4096 Jul 19 08:00 .config/
      -rw-r--r-- 1 shell shell  325 Jul 19 08:15 .odpscmd.history
      -rw-r--r-- 1 shell shell   30 Jul 19 08:21 result.txt
      -rw-r--r-- 1 shell shell    0 Jul 19 08:09 whoami
      shell@Alicloud:~$

      確認完成後,返回雲命令列(odpscmd)環境,命令如下。

      cloudshell-odpscmd -p <project.name>
    2. 將上傳的檔案result.txt上傳至MaxCompute,命令樣本如下。

      tunnel upload result.txt result_table1;
  • 檔案下載

    1. 將MaxCompute的表result_table1下載至雲命令列(odpscmd),命令樣本如下。

      Tunnel download result_table1 result_table1.txt;
    2. 單擊image.png,選擇下载result_table1.txt檔案下載至本地。