¿Cómo crear una lista de árbol que soporte unicode en Windows?

Describe el problema/error/pregunta

Quiero crear una lista de árbol de un directorio pero el problema es que si la carpeta usa caracteres no ingleses o especiales se mostrará como ?. Usé Execute Command Node para ejecutar chcp 65001>nul && tree "C:\Users\Administrator\Desktop\OST\Complete[Nemuri] Kiyoura Natsumi 清浦夏実 (2007-2026) [FLAC]" /f /a. Se muestra bien si lo ejecuto localmente en cmd de Windows y cambio la fuente pero no funciona dentro de n8n ya que parece que no usa la fuente configurada en cmd de Windows. Así que me pregunto si hay una solución o una forma alternativa de crear una lista de árbol que soporte unicode en Windows?

¿Cuál es el mensaje de error (si lo hay)?

Por favor comparte tu flujo de trabajo

Comparte el resultado devuelto por el último nodo

Información sobre tu configuración de n8n

  • versión de n8n: 2.19.5
  • Base de datos (predeterminada: SQLite): predeterminada
  • Configuración n8n EXECUTIONS_PROCESS (predeterminada: own, main): predeterminada
  • Ejecutando n8n a través de (Docker, npm, n8n cloud, aplicación de escritorio): npm
  • Sistema operativo: Windows Server 2022

¿Puedes intentar esto, @Ruriko?

{
  "nodes": [
    {
      "parameters": {},
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        0,
        0
      ],
      "id": "34c7e9d7-0b0c-4b1e-b805-4b17882b2a2a",
      "name": "When clicking \u2018Execute workflow\u2019"
    },
    {
      "parameters": {
        "command": "powershell -NoProfile -Command \"
& { [Console]::OutputEncoding = [System.Text.Encoding]::UTF8; $OutputEncoding = [System.Text.Encoding]::UTF8; $targetPath = 'C:\\Users\\Administrator\\Desktop\\OST\\Complete\\[Nemuri] Kiyoura Natsumi \u6e05\u6d66\u590f\u5b9f (2007-2026) [FLAC]'; function Show-Tree { param([string]$Path, [string]$Indent = '') $items = Get-ChildItem -LiteralPath $Path -ErrorAction SilentlyContinue; if ($null -eq $items) { return }; $last = $items.Count - 1; for ($i = 0; $i -le $last; $i++) { $item = $items[$i]; $isLast = ($i -eq $last); $branch = if ($isLast) { '+---' } else { '+---' }; $connector = if ($isLast) { '    ' } else { '|   ' }; Write-Output ($Indent + $branch + $item.Name); if ($item.PSIsContainer) { Show-Tree -Path $item.FullName -Indent ($Indent + $connector) } } }; Write-Output 'Listado de la ruta de carpetas'; Write-Output ('Ruta: ' + $targetPath); Show-Tree -Path $targetPath }\"
      },
      "type": "n8n-nodes-base.executeCommand",
      "typeVersion": 1,
      "position": [
        208,
        0
      ],
      "id": "af4d7298-a27e-4a8b-a2fc-b7e0a3ba2a00",
      "name": "Ejecutar comando"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "e011378d-a08a-43d5-8215-4c80eb835655",
              "name": "stdout",
              "value": "={{ $json.stdout }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        416,
        0
      ],
      "id": "6002a469-a22b-4005-b8c5-0c5762f3ec6f",
      "name": "Editar campos"
    }
  ],
  "connections": {
    "When clicking \u2018Execute workflow\u2019": {
      "main": [
        [
          {
            "node": "Ejecutar comando",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Ejecutar comando": {
      "main": [
        [
          {
            "node": "Editar campos",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {},
  "meta": {
    "instanceId": "04aa2c89475794a281c2b0c2499df9644f911626b8da471682ca650caf48d1cb"
  }
}

¿Podrías actualizarlo para que funcione si la ruta contiene comillas simples o comillas dobles?