#!/usr/bin/perl use strict; use warnings; my $fork_pid = fork(); if ($fork_pid == 0) { write_pid(); exit 0; } elsif ($fork_pid) { wait; open my $FILEH, '<', 'mypid.txt'; my $line = <$FILEH>; close $FILEH; print "I am $$. Saw child pid $line"; } else { die "Couldn't fork"; } sub write_pid { open my $FILEH, '>', 'mypid.txt'; print $FILEH $$ . "\n"; close $FILEH; }