0 votos

La concatenación de cadenas y variables no funciona en Applescript

Estoy tratando de concatenar en la variable dentro de una cadena de nombre de ruta para hacer este script más eficiente. Este es el código que tengo hasta ahora. Pero parece que no puedo encontrar la sintaxis correcta necesaria con el fin de establecer la variable en la cadena.

    set vserver to POSIX file "/Volumes/johndoe"
    set user to "johndoe" as string

    set source to POSIX file "/Users/johndoe/Documents"

    tell application "Finder"

        duplicate source to vserver with replacing
    end tell

Quiero que johndoe sea sustituido por usuario variable para que el código sea más mantenible para el futuro. Mi objetivo final es ser capaz de copiar múltiples carpetas de casa incluyendo: películas, fotos, documentos, etc... en un servidor compartido.

Intenté hacer esto

"/Users/" & user & "/Desktop"

Pero he recibido este error:

"El buscador obtuvo un error: El manejador no puede manejar objetos de esta clase". número -10010

2voto

Fuzzy Purple Monkey Puntos 702

Si se ejecuta

set user to "johndoe"
set source to POSIX file "/Users/" & user & "/Documents"

el resultado es

{file "Macintosh HD:Users:", "johndoe", "/Documents"}

Sólo hay que poner paréntesis alrededor de la ruta:

set user to "johndoe"
set source to POSIX file ("/Users/" & user & "/Documents")

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X