#!/usr/bin/env perl use strict; use warnings; use IO::Socket; my $server = IO::Socket::INET::->new( Proto => 'tcp', LocalPort => 55555, Listen => SOMAXCONN, ReuseAddr => 1, ) || die "Can't open server socket: $IO::Socket::errstr"; my $client = $server->accept(); $client->autoflush; while (defined(my $read = <$client>)) { chomp $read; if (index($read, 'GET /DATA_String/') == 0) { system('sh', 'process.sh', $read); } }