Linux / UNIX: Run Commands When You Log Out

last updated in Categories ,

I’ve written a Perl script that connects to our central server for me and it allows me feed data so that I make a timesheet later. How do I run my script when I log out from Apple OS X or Linux / UNIX workstation using bash shell?

Howto: Write script in Perl

last updated in Categories , ,

Q. I’m new to Linux and Perl. I’ve printed perl man page but it is bit confusing and omits a lot of simple things or details. Can you tell me how do I write a perl script? How do I open perl editor?

A. Larry Wall began work on Perl in 1987 and it is a dynamic programming language. Traditionally perl programs are written using text editor such as vi or emacs. The overall structure of Perl derives broadly from C.

Also when you start learning a new programming language, always start with Hello world program.

Hello world Perl Program

Let us print Hello world from a shell prompt. Type the following command (excluding $ ):
$ perl -e 'print "Hello, world!\n"';
Output:

Hello, world!

Let us write hello world program using vi text editor:
$ vi hello.pl
Append code as follows:
#!/usr/bin/perl
print "Hello, world!\n";

Save and close the file. Now setup a execute permission:
$ chmod +x hello.pl
Finally execute perl program:
$ ./hello.pl

  • First, I used the vi command to create a file named hello.pl
  • The first line of the script used to specify that the script is to be executed by perl program (#!/usr/bin/perl) and not by a shell.
  • Print command prints hello world on screen. Please note that the notation \n which stands for newline i.e. print a newline.

Further reading

This is just a simple introduction. You should consider following text books & resources for more information and mastering the perl:

How do I send html email from Perl?

last updated in Categories , , , , , , , ,

Q. How Can I send html email from cgi perl program under UNIX / Linux and Apache web sever?

A. Sending HTML email is an easy task with MIME::Lite CPAN module. It is a low-calorie MIME generator.

It can be use to send html emails, graphics file email attachments as a single-part or multi-part message. Here is simple perl script that sends html email.

Install Perl MIME::Lite

If you do not have MIME::Lite module, install using following command (login as a root user):

# cpan -i MIME::Lite

Perl script code

Script to send html email from perl:

#!/usr/bin/perl -w use strict; use MIME::Lite; # SendTo email id my $email = 'user@somewhere.com'; # create a new MIME Lite based email my $msg = MIME::Lite->new ( Subject => "HTML email test", From => 'YOU@somewhere.com', To => $email, Type => 'text/html', Data => '<H1>Hello</H1><br>This is a test email. Please visit our site <a href="http://cyberciti.biz/">online</a><hr>' ); $msg->send();

Save the script and execute it. Here is an email (sample) send by above script:

Read man page of MIME::Lite for more information:

perldoc MIME::Lite