#!/usr/bin/perl # to login to work machine, rewrite /$home/etc/hosts entry use strict; use warnings; use Net::SSH qw(sshopen2); my $ppp0 = `/sbin/ifconfig ppp0`; die "Invalid output from ifconfig! Received: $ppp0\n" unless ($ppp0 =~ m/(\d+\.\d+\.\d+\.\d+)/); my $ip = $1; my $user = "jrak"; my $host = "mail.myhost.org"; my $cmd = "perl -pi -e 's/^\\d+\\.\\d+\\.\\d+\\.\\d+\thome/$ip\thome/' /home/jrak/etc/hosts"; sshopen2( "$user\@$host", *READER, *WRITER, "$cmd" ) or die "ssh: $!"; while () { print $_; } close(READER); close(WRITER);