rdp-cli

Windows、Mac 與 Linux 的 RDP 命令列入門

連接一次,觀察畫面,執行命令,再檢查結果。本機查看視窗按需打開。

從你的電腦開始

選擇平台。
開始遠端任務。

選擇執行 rdp-cli 的電腦。
為你的 Agent 準備好遠端操作工具。

01 / 安裝與檢查

下載 EXE,打開 PowerShell。

選擇 x64(64 位)或 x86(32 位)EXE,將 rdp-cli.exe 放入資料夾,在該資料夾打開 PowerShell。

提供已簽章的 x64、x86 單檔 EXE,無須另裝執行階段。

PowerShell
.\rdp-cli.exe --help
02 / 連接遠端電腦

先在遠端啟用 RDP。替換 192.0.2.20 和 USER;通過不回顯的提示輸入密碼,密碼從標準輸入送入命令。儲存返回 JSON 中的 data.session。

PowerShell
$secret = Read-Host '密碼' -AsSecureString
$savedEncoding = $OutputEncoding
try {
  $OutputEncoding = [System.Text.UTF8Encoding]::new($false)
  [System.Net.NetworkCredential]::new('', $secret).Password |
    .\rdp-cli.exe connect --host 192.0.2.20 --user USER --password-stdin
} finally {
  $OutputEncoding = $savedEncoding
  $secret.Dispose()
}
03 / 獲取畫面

將 SESSION 換成連接返回的值。打開 before.png,查看目標應用和輸入位置,並儲存截圖結果中的 data.observation。

PowerShell
.\rdp-cli.exe screenshot --session SESSION --out ./before.png
04 / 操作並檢查

先從截圖確定可輸入位置,再替換 X、Y 和 OBSERVATION。點擊後重新截圖,用新的觀察值輸入;最後查看 after.png,確認遠端實際結果。

PowerShell
.\rdp-cli.exe click --session SESSION --desktop --x X --y Y --observation OBSERVATION
.\rdp-cli.exe screenshot --session SESSION --out ./focused.png
.\rdp-cli.exe type --session SESSION --text "遠端任務已完成。" --observation NEW_OBSERVATION
.\rdp-cli.exe screenshot --session SESSION --out ./after.png
05 / 按需觀看

人想看進度時再打開同一會話,預設只讀。視窗中可暫停、接管和交還;Agent 的普通命令操作不依賴這個視窗。

PowerShell
.\rdp-cli.exe watch --session SESSION --viewer window
.\rdp-cli.exe watch --session SESSION --viewer web
01 / 安裝與檢查

打開 DMG,啟用命令行。

將 rdp-cli 拖入“應用程式”,然後在 macOS 終端(zsh)執行下面的命令。

依 Mac 的晶片選擇 DMG:Apple silicon 需 macOS 13 或以上,Intel 需 macOS 12 或以上。各版本是否可下載,以下載頁為準。

zsh
/Applications/rdp-cli.app/Contents/MacOS/rdp-cli install-cli
rdp-cli --help
02 / 連接遠端電腦

先在遠端啟用 RDP。替換 192.0.2.20 和 USER;通過不回顯的提示輸入密碼,密碼從標準輸入送入命令。儲存返回 JSON 中的 data.session。

zsh
read -r -s "rdp_password?密碼: "
printf '\n'
printf '%s' "$rdp_password" | rdp-cli connect --host 192.0.2.20 --user USER --password-stdin
unset rdp_password
03 / 獲取畫面

將 SESSION 換成連接返回的值。打開 before.png,查看目標應用和輸入位置,並儲存截圖結果中的 data.observation。

zsh
rdp-cli screenshot --session SESSION --out ./before.png
04 / 操作並檢查

先從截圖確定可輸入位置,再替換 X、Y 和 OBSERVATION。點擊後重新截圖,用新的觀察值輸入;最後查看 after.png,確認遠端實際結果。

zsh
rdp-cli click --session SESSION --desktop --x X --y Y --observation OBSERVATION
rdp-cli screenshot --session SESSION --out ./focused.png
rdp-cli type --session SESSION --text "遠端任務已完成。" --observation NEW_OBSERVATION
rdp-cli screenshot --session SESSION --out ./after.png
05 / 按需觀看

人想看進度時再打開同一會話,預設只讀。視窗中可暫停、接管和交還;Agent 的普通命令操作不依賴這個視窗。

zsh
rdp-cli watch --session SESSION --viewer window
rdp-cli watch --session SESSION --viewer web
01 / 安裝與檢查

一個檔案,直接執行

下載 Linux x86_64 檔案,授予執行權限後在終端機執行,無需管理員權限。

清單中的 x86_64 系統使用同一個靜態 ELF;本次範圍不包含其他系統版本和 CPU 架構。

Bash
chmod u+x ./rdp-cli-linux-x86_64
./rdp-cli-linux-x86_64 --help
02 / 連接遠端電腦

先在遠端啟用 RDP。替換 192.0.2.20 和 USER;通過不回顯的提示輸入密碼,密碼從標準輸入送入命令。儲存返回 JSON 中的 data.session。

Bash
IFS= read -r -s -p '密碼: ' rdp_password
printf '\n'
printf '%s' "$rdp_password" | ./rdp-cli-linux-x86_64 connect --host 192.0.2.20 --user USER --password-stdin
unset rdp_password
03 / 獲取畫面

將 SESSION 換成連接返回的值。打開 before.png,查看目標應用和輸入位置,並儲存截圖結果中的 data.observation。

Bash
./rdp-cli-linux-x86_64 screenshot --session SESSION --out ./before.png
04 / 操作並檢查

先從截圖確定可輸入位置,再替換 X、Y 和 OBSERVATION。點擊後重新截圖,用新的觀察值輸入;最後查看 after.png,確認遠端實際結果。

Bash
./rdp-cli-linux-x86_64 click --session SESSION --desktop --x X --y Y --observation OBSERVATION
./rdp-cli-linux-x86_64 screenshot --session SESSION --out ./focused.png
./rdp-cli-linux-x86_64 type --session SESSION --text "遠端任務已完成。" --observation NEW_OBSERVATION
./rdp-cli-linux-x86_64 screenshot --session SESSION --out ./after.png
05 / 按需觀看

人想看進度時再打開同一會話,預設只讀。視窗中可暫停、接管和交還;Agent 的普通命令操作不依賴這個視窗。

Bash
./rdp-cli-linux-x86_64 watch --session SESSION --viewer window
./rdp-cli-linux-x86_64 watch --session SESSION --viewer web
01 / 安裝與檢查

一個檔案,直接執行

為 64 位元 ARM Linux 系統下載 Linux ARM64 檔案,加入執行權限後,以一般使用者執行。

同一個靜態 ARM64 ELF 支援列出的 Linux 系統、樹莓派 4 和 DGX Spark。不支援 32 位元樹莓派系統。

Bash
chmod u+x ./rdp-cli-linux-arm64
./rdp-cli-linux-arm64 --help
02 / 連接遠端電腦

先在遠端啟用 RDP。替換 192.0.2.20 和 USER;通過不回顯的提示輸入密碼,密碼從標準輸入送入命令。儲存返回 JSON 中的 data.session。

Bash
IFS= read -r -s -p '密碼: ' rdp_password
printf '\n'
printf '%s' "$rdp_password" | ./rdp-cli-linux-arm64 connect --host 192.0.2.20 --user USER --password-stdin
unset rdp_password
03 / 獲取畫面

將 SESSION 換成連接返回的值。打開 before.png,查看目標應用和輸入位置,並儲存截圖結果中的 data.observation。

Bash
./rdp-cli-linux-arm64 screenshot --session SESSION --out ./before.png
04 / 操作並檢查

先從截圖確定可輸入位置,再替換 X、Y 和 OBSERVATION。點擊後重新截圖,用新的觀察值輸入;最後查看 after.png,確認遠端實際結果。

Bash
./rdp-cli-linux-arm64 click --session SESSION --desktop --x X --y Y --observation OBSERVATION
./rdp-cli-linux-arm64 screenshot --session SESSION --out ./focused.png
./rdp-cli-linux-arm64 type --session SESSION --text "遠端任務已完成。" --observation NEW_OBSERVATION
./rdp-cli-linux-arm64 screenshot --session SESSION --out ./after.png
05 / 按需觀看

人想看進度時再打開同一會話,預設只讀。視窗中可暫停、接管和交還;Agent 的普通命令操作不依賴這個視窗。

Bash
./rdp-cli-linux-arm64 watch --session SESSION --viewer window
./rdp-cli-linux-arm64 watch --session SESSION --viewer web

示例使用文件地址和佔位帳號。用實際返回的 session 和 observation 替換佔位值;命令發出後,仍需查看新截圖確認結果。

交給你的 Agent 使用

告訴 Agent 程序路徑、獲授權的目標或已有會話,以及期望的遠端結果。可選 rdp-cli-agent 技能記錄了命令工作流,Agent 可以直接閱讀 SKILL.md;連接本身不需要安裝技能。

rdp-cli-agent / SKILL.md ↓

連接與訪問設定

RDP 證書策略目前為相容性預設使用 ignore,請查看 connect --help 並按環境配置驗證方式。官網不轉發會話,也不收集遠端憑據。瀏覽器查看器適用於區域網路/VPN,VNC 傳輸需要可信網路。

rdp-cli@weerocks.com