Pregunta

Actualmente estoy usando esto ( http: / /lifehacker.com/193778/download-of-the-day--auto+applescript-tickler-file ) para un sistema de archivo de vencimientos y que fije en mi cuadro de selección (por lo que funciona a través de los sistemas). Hay sólo un par de cosas a partir de lo que es perfecto. Si alguien me puede ayudar a que sería excelente.

Lo que busco es un script o un flujo de trabajo que tendrá el contenido de las carpetas del día anterior (que cambia cada día y están numerados) y moverlos al día actual. Así que, yo puedo ponerlo en como una alarma para llevar a cabo en la mañana todos los días.

Muchas gracias.

¿Fue útil?

Solución

Si entiendo correctamente a sus necesidades, a continuación, este script debe hacer lo que quiera. Asegúrese de cambiar el nombre de usuario en la primera línea de su nombre de usuario.

set username to "lizzan"

set cy to (year of (current date)) as integer
set cm to (month of (current date)) as integer
set cd to (day of (current date)) as integer

set yd to yesterday(cy, cm, cd)

set yy to item 1 of yd
set ym to item 2 of yd
set yd to item 3 of yd


set yFolder to "Macintosh HD:Users:" & username & ":Documents:To Do:" & yy & ":" & ym & ":" & yd
set cFolder to "Macintosh HD:Users:" & username & ":Documents:To Do:" & cy & ":" & cm & ":" & cd

tell application "Finder"
    move every file of folder yFolder to cFolder
end tell

on yesterday(y, m, d)
    set d to d - 1

    if d ≤ 0 then
        set m to m - 1
        if m ≤ 0 then
            set y to y - 1
            set m to 12
        end if
        set thirtyones to {1, 3, 5, 7, 8, 10, 12}
        set thirties to {4, 6, 9, 11}
        if m is in thirtyones then
            set d to 31
        else if m is in thirties then
            set d to 30
        else if leapyear(y) then
            set d to 29
        else
            set d to 28
        end if

    end if

    set yd to {y, m, d}
    return yd

end yesterday

on leapyear(y)
    if y mod 4 is 0 then
        if y mod 100 is 0 then
            if y mod 400 is 0 then
                return true
            end if
            return false
        end if
        return true
    end if

    return false

end leapyear

Advertencia: La secuencia de comandos se producirá un error (y, posiblemente, sólo se han trasladado algunos de sus archivos) si ya existe un archivo con el mismo nombre en la carpeta que se está moviendo a. Si desea reemplazar los archivos en ese caso, y evitar su defecto, añadir with replacing al final de la línea 18 (move every ... to cFolder with replacing).

Editar para añadir: Oh, acabo de ver que lo tenía configurado en su Dropbox en lugar de en la carpeta Documentos. Sólo cambia las rutas de acceso en las líneas 14 y 15 para reflejar la ruta que está usando, y que debería estar bien.

Otros consejos

Una solución muy simple es un Automator Application (flujo de trabajo que ejecuta de forma independiente). Tomó unos 15 segundos (literalmente) para establecer este flujo de trabajo hasta: text alt

Licenciado bajo: CC-BY-SA con atribución
No afiliado a apple.stackexchange
scroll top