3 votos

script para eliminar todos los grupos en los contactos

Me gustaría tener un script para borrar todos mis grupos en mis Contactos. De alguna manera tengo una especie de error de replicación que resulta en más de 500 grupos.
Borrarlos uno a uno no es una opción.

He probado este script, pero no hace el trabajo, tengo que introducir demasiados nombres de grupos y después de un tiempo el sript 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.

8voto

Ged Byrne Puntos 481

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

Este script borrará todos los grupos con el nombre que introduzcas (te lo pide con un cuadro de diálogo) hasta que no encuentre 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

1 votos

Daniel Gracias, funciona muy bien. Incluso cuando repetí mi script varias veces, no hizo el trabajo. Gracias por tu solución. Se agradece mucho

0 votos

Tenía un montón de nombres de grupo de la siguiente manera: "<Z name=/syncservicesagent/NoCategoryLabel comment='la misma etiqueta que se utiliza para el elemento No Category en las listas de categorías'>No Category</Z>" El simple script no funcionó pero el anterior más largo hizo el truco. Gracias por compartirlo.

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