Crear script de contenedor para Mail.app para enviar correo desde Terminal

Estoy tratando de enviar correos desde la terminal con la ayuda de bash y applescript. Uso bash para ocuparme de los arguments y el cuerpo del post de correo electrónico. Luego intenté usar Applescript para enviar el correo con Mail.app. Me he encontrado con algunos problemas, sin embargo, cuando bash lo siguiente obtengo: 4:4: syntax error: Expected expression but found end of script. (-2741) 4:4: syntax error: Expected expression but found end of script. (-2741)

 #!/bin/bash if [ $# -ne 2 ] then echo "Arguments: <subject> <recipient>" >&2 #stderr exit 1 fi read message applescript=" tell application \"Mail\" set theMessage to make new outgoing message with properties {visible:true, subject:${1}, content:${message}, address:${2}} send theMessage end tell " # send the message osascript -e ${applescript} 

Versión actualizada:

  • ¿Cómo puedo evitar errores relacionados con permissions al importar en Photos.app a través de AppleScript?
  • Obtener parte del resultado de la línea de command en OS X
  • En la Terminal I no puedo escribir e minúscula
  • Habilita la administración remota de forma remota en un mac
  • "Es un error de directory" en bash
  • Script de Shell para reiniciar un determinado process si no responde
  •  #!/bin/bash if [ $# -ne 2 ] then echo "Arguments: <subject> <recipient>" >&2 #stderr exit 1 fi read message echo "tell application \"Mail\" set theEmail to make new outgoing message with properties {visible:true, subject:\"${1}\", content:\"${message}\"} tell theEmail make new recipient at end of to recipients with properties {address:\"${2}\"} send theEmail end tell end tell" | osascript 

  • ¿Cómo ordero Automator convertir las imágenes múltiples de PNG a ICNS una vez? (Resuelto)
  • ¿Cómo crear una aplicación OSX para envolver una llamada a un script de shell?
  • ¿Cómo envío varias fotos desde la camera rodada de mi iPhone en un solo correo electrónico?
  • Montar unidades compartidas con diferentes usuarios
  • ¿Cómo cambiar el tamaño de una window de Google Hangouts en AppleScript?
  • necesita AppleScript para search en una tabla de 2 columnas, sin Excel, Números, etc.
  • 2 Solutions collect form web for “Crear script de contenedor para Mail.app para enviar correo desde Terminal”

    Es posible que también desee consultar esta publicación SuperUser . La respuesta aceptada proporciona un script bash que utiliza AppleScript para enviar un correo electrónico con un file adjunto desde una línea de command del Terminal. Este script puede ser más funcional de lo que necesita, pero es un gran punto de partida. El código de la respuesta:

     #!/bin/bash echo "tell application \"Mail\" activate set MyEmail to make new outgoing message with properties {visible:true, subject:\"$2\", content:\"Some Message Here\"} tell MyEmail make new to recipient at end of to recipients with properties {address:\"$1\"} make new attachment with properties {file name:((\"$3\" as POSIX file) as alias)} end tell end tell " | osascript 

    ¿Necesita usar Mail.app, o su objective es simplemente enviar un post de correo electrónico? Si solo se trata de enviar un post de correo electrónico desde la Terminal, puede usar la utilidad de command-line de sendemail .

     /usr/local/bin/sendemail -f from@my.email.com -t my.recipient@their.email.com -s your.smtp.server:port -xu smtp.username.here -xp smtp.password.here -m message.body.goes.here 

    Obviamente en Terminal todo eso tendrá que ir en una sola línea, con escapes apropiados y comillas de strings. Puede consultar la página del manual de sendemail para get más opciones.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).