Esa preferencia parece estar almacenada en com.apple.speech.synthesis.general.prefs
Prueba esto:
defaults write com.apple.speech.synthesis.general.prefs TimeAnnouncementPrefs -dict-add TimeAnnouncementsEnabled 1
o 0 al final para desactivarlo. Ver man defaults
para más información.
Editar: Otra cosa que debería hacer el shell script: si no ha activado esta preferencia u otro comportamiento de síntesis de voz desde el inicio, también tendrá que lanzar el demonio del servidor de síntesis de voz:
open /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesisServer.app
De lo contrario, la opción aparecerá como marcada en las Preferencias del Sistema, pero nada leerá realmente la opción cuando sea el momento de decir la hora.