Script para eliminar todos los grupos en los contactos

1

Me gustaría tener un script para eliminar todos mis grupos en mis contactos. De alguna manera obtuve una especie de error de replicación que resultó en más de 500 grupos.
Eliminarlos uno por uno no es una opción.

Intenté esta secuencia de comandos, pero no hace el trabajo, tengo que ingresar a muchos nombres de grupo y, después de un tiempo, la escritura se detiene incluso cuando no se han eliminado todos los grupos.

tell application "Contacts" 
repeat 50 times 
set theGroup to group "MyGroupName" 
delete theGroup 
end repeat 
save
end tell

Cualquier ayuda será muy apreciada.

    
pregunta James 30.09.2012 - 18:39

1 respuesta

5

La razón por la que el script no elimina todos los grupos falsos es que solo se repite 50 veces, por lo que solo eliminará 50 de una vez.

Este script eliminará todos los grupos con el nombre que ingresó (le preguntará con un cuadro de diálogo) hasta que no pueda encontrar más:

set counter to 0
display dialog "Name of group to delete?" default answer ""
set theGroupName to text returned of result
tell application "Contacts"
    repeat
        try
            set theGroup to group theGroupName
            delete theGroup
            set counter to counter + 1
        on error
            exit repeat
        end try
    end repeat
    save
    display dialog "Removed " & counter & " instances of the group" with icon caution buttons {"OK"} default button "OK"
end tell
    
respondido por el robmathers 01.10.2012 - 02:21

Lea otras preguntas en las etiquetas