A list of optional flags including --user --pass --from --to --subject can be seen at the bottom of the smtp-cli Perl script on Github.
Some caveats when trying to send mail through Gmail:
1. When you use the flags --user username --pass foo you cannot use your regular PW for Gmail but must generate an application-specific password instead.
If you don't specify a password beforehand with --pass, you will be interactively prompted to enter your PW as soon as smtp-cli runs
Enter password for email@example.com :
2. If you want to set up a cron job to run smtp-cli, make sure you specify your app-specific password after the --pass flag, otherwise cron will not be able to handle the interactive prompt.
3. To be able to send multilingual emails, be sure to pass the flag
Here is an example invocation of smtp-cli that will send an email to my personal gmail account:
[archjun@arch smtp-cli]$ smtp-cli --verbose --host=smtp.gmail.com --enable-auth --user gojun077 --pass 123456789abcdefg --from firstname.lastname@example.org --to email@example.com --subject "testing smtp-cli script #2" --body-plain="This is the body. 이건 바디다." --charset=UTF-8
This is the body. 이건 바디다.
I originally heard about a similar Perl script called sendemail (not to be confused with the mail server sendmail), but it hasn't been updated since 2009 and currently doesn't work due to an SSL bug.
smtp-cli, on the other hand, is comparatively recent with version 3.6 updated July 11, 2013 and even has a package available through AUR. It works great!