#!/usr/bin/perl use strict; use warnings; my $inputfile_one = $ARGV[0]; # input lib FILE my $inputfile_two = $ARGV[1]; # input lib FILE my $pin_name; my $counter = 0; if ($#ARGV!=1) { print "USAGE :: perl lib_marge.pl <> <> \n\n" ; exit(1); } mkdir 'tmpdir' unless -d 'tmpdir'; mkdir 'finallib' unless -d 'finallib'; my $cmd_1 = "head -n -1 $inputfile_one > tmpdir/$inputfile_one ;"; # Removing the last line from the main lib file system ($cmd_1); open (INFILE_TWO,"<","$inputfile_two") || die "Can not open LIB_FILE_FOR_MARGE"; open (OFILE,">","tmpdir/Output.csv") || die "Can not open Input Text File"; while (my $line = ) { chomp $line; # print "$line \n"; if ($line =~m/^\s*cell\s*\(\"(.*)\"\)/g || $line =~m/^\s*cell\((.*)\)/g || $line =~m/^\s*cell\s*\((.*)\)/g) { $pin_name = $1; chomp $pin_name; $counter = 1; } if ( $counter == 1 ) { print OFILE "$line\n"; } } close INFILE_TWO; close OFILE; my $cmd_2 = "cat tmpdir/$inputfile_one tmpdir/Output.csv > finallib/$inputfile_one ;rm -rf tmpdir"; system ($cmd_2);