Archive for the ‘Scripts’ Category

Guardar PDF en Illustrator con Applescript.

Astelehena, Abuztua 23rd, 2010

Y de nuevo con un trabajo tengo que crear un montón de PDFs, esta vez con Adobe Illustrator… y ya que tengo que hacer muchos durante un tiempo he hecho un pequeño guión en Applescript.

El script lo que hace es crear un PDF de cada uno de los documentos .ai que arrastremos sobre él. Lo único a tener en cuenta en este script es indicar el preset que vamos a utilizar para crear el PDF, en éste caso, uno que he llamado “email”.

Otro asunto importante es que al automatizarse la apertura del documento, tenemos que estar seguros que se abrirá sin errores. La tipografía, las imágenes, etc. deben estar activadas y actualizadas correctamente.

on open x
repeat with artxibo in x
	tell application "Adobe Illustrator"
		activate
		open artxibo
		set docName to name of current document
		set theFolder to path to desktop folder as text
		set pdfOpt to {class:PDF save options, PDF preset:"email"}
		set destino to theFolder & docName
		save current document in file (destino) as pdf with options pdfOpt
		close current document saving no
	end tell
end repeat
tell application "finder" to activate
end open

Lo utilizo en Illustrator CS5 pero en principio funcionaría en cualquier versión anterior.

cc rafaespada

foto: cc rafaespada


Renombrado de ficheros aleatorio.

Igandea, Abuztua 15th, 2010

Tengo que hacer una recopilación de fotos y no quería que se identificasen fácilmente, para ello lo más fácil es quitar todo tipo de metadatos, pero algo que también tienen mis fotos que las puede indentificar es “el nombre”.

En él suelo poner una serie de datos (nombre, fecha, etc.) y es una dato que en este caso no quería que se mostrase.

Así que he preparado un script en AppleScript para renombrar todos los ficheros de una carpeta.

Os dejo el script y el código, descargar: file_random.zip

Cambiar codificación a ficheros de texto.

Asteartea, Ekaina 1st, 2010

Tenía que cambiar la codificación de un par de cientos de documentos de ISO-8859-1 a UTF8 y bueno… seguro que hay cosas por ahí para hacerlas automáticamente, pero con un poquito de Applescript y una de mis aplicaciones favoritas, Textwrangler, no he tardado ni 3 minutos en hacerlo.

Los abría por carpetas, porque prefiero vigilar un poco… y luego… ejecutar. Si además se guarda en la carpeta de scripts de la aplicación se hace más rápido y se tiene siempre a mano.

tell application "TextWrangler"
try
set encoding of every document to "Unicode (UTF-8, no BOM)"
close every document saving yes
end try
end tell

Se puedes sustituir “UTF-8, no BOM” por “ISO Latin 1″ si lo que se quiere es convertir a ISO-8859-1.

Convertir páginas web en imagen.

Igandea, Maiatza 9th, 2010

Para un par de clientes a los que hago una serie de trabajos de maillings y webs tengo que enviarles constantemente lo que les voy haciendo pero como imagen, para correcciones y demás pasos intermedios.

Lo cierto que es que con Paparazzi! me arreglo bastante bien, pero he dado un paso más… automatizarlo con AppleScript. Una pequeña aplicación que con un sólo click se encarga de dejarme en el escritorio lo que estoy viendo en el navegador.

Aunque yo uso WebKit aquí dejo la versión para utilizar con Safari. No utilizo más navagadores salvo para cosas concretas, así que no tengo pensado que sirva para otros. Firefox descartado por el pobre soporte de AppleScript que tiene, aunque ya tiene un plugin para ello. Opera y Camino pueden ponerse sin problema.

Requisito es tener Paparazzi! instalado: http://derailer.org/paparazzi/
Descargar mi script: capture_paparazzi.zip. El script es editable por si se quieren hacer cambios.

Me comenta un usuario que el script da problemas en Tiger (MacOS X 10.4) pero como no tengo acceso a ninguno… ni idea.

Alarmas en los cumpleaños de iCal.

Larunbata, Urtarrila 5th, 2008

Una de las ventajas que tiene el iCal de Mac es que puede crearnos un calendario con los cumpleaños que tenemos colocados en nuestra libreta de direcciones. Por el contrario, una de las pegas, es que crea eventos a los que no se les pueden colocar alarmas.

He creado un sencillo script en AppleScritpt que nos permitirá colocar alarmas en estos eventos.

image

Hay dos alarmas que se crean, una en forma de mensaje, otra envía un correo electrónico al dueño del ordenador (al contacto marcado como YO en la agenda). Si alguna se quiere quitar no hay más borrar la línea o simplemente comentarla, por dos guiones (–) delante de ella.

Este script habría que ejecutarlo cada vez que metemos un cumpleaños nuevo en la agenda. Coloco las dos líneas de “delete…” porque al ejecutarlo repetidas veces nos duplicaría (triplicaría, etc…) las alarmas…

Se puede ejecutar directamente desde el Editor de Scripts, pero se tiene que activar primero en las preferencias de iCal que muestre los cumpleaños, y claro está… tener en la agenda contactos con cumpleaños.

Descargarlo: iCal_urtebetzeak.scpt

Escaneo de una red local.

Asteartea, Azaroa 6th, 2007

Hoy me ha tocado escanear un par de redes locales para localizar equipos… aunque es un recurso ya muy viejo (el nuevo soy yo)… lo he hecho con nmap (nmap en la wikipedia) y en menos de 10 segundos tenía escaneadas tres redes… en Zarautz, Madrid y Barcelona (unidas por VPNs) en total unos 175 equipos.

Con un comando tan sencillo como este:

nmap -sP 192.168.1.0-255 > listado.txt

Instalar en MacOS X con Fink (fink install nmap).
En Linux con apt-get (apt-get install nmap).

twitter script.

Astelehena, Urria 29th, 2007

Estoy probando ese servicio que no vale para nada llamado Twitter y he creado un script (jajajaja) para los que nos pasamos todo el día delante de códigos y terminales… para que nos resulte más fácil y cómodo actualizar nuestro estado Twitter

twitter terminal

Solo debes descargarte este fichero… descomprimirlo y editarlo para poner tus datos de Twitter:

declare -rx USERNAME="YOUR_USERNAME"
declare -rx PASSWORD="YOUR_PASSWORD"

Deberás darle privilegios de ejecución (chmod +x ...) y ponerlo en marcha con el terminal…

Igual son muchos pasos para poner en marcha pero de todas las soluciones que he probado (AIM, Web, programas varios, etc.) es la que más se adapta a mi manera de currar y la que menos te delata si tienes gente cerca a la que no te apetece dar explicaciones de lo que haces. Si quieren saber lo que estas haciendo… que miren en Twitter… jajajajaja

Probado con Linux Ubuntu y Mac OS X.

No hay programada ninguna depuración de errores, es un script básico… si no lo hace bien no lo dice. Es requisito es tener conexión a Internet.

Inspirado en el script twitter-update para Amarok de Guillermo A. Amaral.

He puesto también un logo de la esta gilipollez en la barra lateral de menús… así sabréis cuando me estoy rascando los ojos… :-P

Borrar la caché de DNS.

Asteartea, Iraila 25th, 2007

Hoy me ha tocado modificar las DNS del servidor del curro… así que a borrar la caché de DNS la de algunos ordenadores que necesitaban acceso a las nuevas asignaciones de IPs.

MacOS X (terminal): sudo lookupd -flushcache
MacOS X Leopard (terminal): dscacheutil -flushcache
Windows (interface de comandos): ipconfig /flushdns

En Linux en visto que dicen hacer /etc/rc.d/init.d/nscd restart pero en Ubuntu es este otro comando: /etc/init.d/nscd restart

Acabo de registrar unos dominios y la cache local de Ubuntu no me dejaba ver… así que he rebuscado y este otro comando si ha funcionado perfectamente… sudo /etc/init.d/dns-clean start

Y para borrar la cache de un servidor DNS basado en Bind9 rndc dumpdb y en Bind8 ndc dumpdb.

Para comprobar como resuelven los DNS utilizar host dominio.

Varios criterios de acceso en Apache.

Ostirala, Iraila 14th, 2007

Loco he estado un par de horas para configurar esto.. así que lo comparto… En mi defensa decir que no tengo demasiada experiencia en la configuración de Apache… pero me supongo que hay ciertas cosas que se pueden hacer y me meto con ellas aunque no tenga ni idea… os cuento:

La pregunta: ¿Como exigir la petición de Usuario/Clave a un acceso desde el exterior a la red local en la que está un servidor Apache, pero no exigirla a los que pertenecen a la red local?

La respuesta:

<Directory />
  AuthType Basic
  AuthName "Directorio Restringido. No visitas!!!"
  AuthUserFile /RutaAlFicheroDeClaves
  Require user USUARIO
  Order allow,deny
  Allow from 192.168.1
  Satisfy Any
</Directory>

Por un lado requerimos el usuario… si no denegamos el acceso. Luego permitimos el acceso a un rango de IPs… estas directivas entran en conflicto… así que ponemos Satisfy Any y con que se cumpla una de la dos directivas te dejará pasar.

Con Satisfy All tendríamos doble seguridad… las dos directivas SE DEBERÁN cumplir para poder acceder.

Lo que me ha vuelto loco ha sido la línea que está en negrita… ahora lo veo lógico… pero hace un par de horas no…

Copias de seguridad con Rsync

Larunbata, Iraila 8th, 2007

Cada vez somos más conscientes de la necesidad de hacer copias de seguridad de la información que hay en nuestros ordenadores. Bien, pero llegado ese momento nos preguntamos: ¿como hacerla?, ¿qué programa utilizar?, ¿que criterio seguir (política de seguridad)?, etc.

Cientos de programas gratuitos, sharewares y comerciales aparecerán en nuestra búsqueda por Internet.

Yo utilizo rysnc. Es multiplataforma y viene instalado en todos los MacOS X, funciona en el Terminal y nos permitirá hacer todas las copias de seguridad que necesitemos, de la forma que más nos guste. Es el típico programa de Código Abierto: pequeño, sencillo y fiable.

rsync terminal

(gehiago…)

Capas de Indesign y JavaScript

Asteartea, Iraila 4th, 2007

Durante estos días me ha tocado hacer un script para integrarlo con Adobe Indesign. Normalmente los hago en AppleScript, pero en este caso necesitaban ejecutarlo en PC. Indesing ofrece tres métodos de programar los scripts (VB para Windows, AppleScript para Macintosh y JavaScript para ambas plataformas).

(gehiago…)