#!/usr/bin/perl use warnings; use strict; use Tie::File; use File::Copy; use Sys::Hostname; my $host = hostname; my $group = 'sbo'; my $newstring = 'sbo::18659:x0929,x1465,x1368,x5552'; my $backup = "/tmp/groups"; copy ("$backup", "$backup.tmp") or die "can not copy $backup"; tie my @lines, 'Tie::File', "$backup" or die "can not open $backup $!"; for (@lines) { if (/$group/) { $_ .= $newstring; last; } } untie @lines; print "\n $host \n";