Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

363
Visualizações
¿Cómo puedo obtener una carpeta de entrada y sus archivos usando Javascript para Automator?

Estoy escribiendo un flujo de trabajo automático para trabajar con archivos y carpetas. Lo estoy escribiendo en JavaScript porque estoy más familiarizado con él.

Me gustaría recibir una carpeta y obtener el nombre de la carpeta y los archivos que contiene.

Esto es más o menos lo que he intentado:

  1. La ventana recibe las carpetas actuales en Finder (solo me interesa la primera y única carpeta)

  2. Obtener contenido de la carpeta

  3. JavaScript:

     function run(input,parameters) { var files = []; for(let file of input) files.push(file.toString().replace(/.*\//,'')); // etc }

Esto funciona, pero no tengo el nombre de la carpeta. Usando esto, obtengo el nombre completo de la ruta de cada archivo, por lo que lo ejecuto a través del método replace() .

Si omito el paso 2 anterior, obtengo la carpeta, pero no sé cómo acceder al contenido de la carpeta.

Puedo falsificar la carpeta obteniendo el primer archivo y eliminando el nombre del archivo, pero me pregunto si existe un enfoque más directo para obtener tanto la carpeta como su contenido.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Lo tengo funcionando. Por si alguien tiene una pregunta similar:

 // Window receives current folders in Finder var app = Application.currentApplication() app.includeStandardAdditions = true function run(input, parameters) { let directory = input.toString(); var directoryItems = app.listFolder(directory, { invisibles: false }) var files = []; for(let file of directoryItems) files.push(file.toString().replace(/.*\//,'')) ; // etc }

No incluyo el paso Obtener contenido de la carpeta, sino que itero a través de la carpeta usando app.listFolder() en su lugar. El método replace() es recortar todo hasta la última barra inclinada, dando el nombre base del archivo.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda