Perl concatenate an array


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Perl concatenate an array
# 1  
Old 07-28-2011
Perl concatenate an array

Not a perl guru and need some help with a script I inherited. My perl script has a variable that is concatenated and works fine as is, but what I need is to remove a string in the output and input a files content. This is emailed as a html report and I can't get the file to output in the email message. I can get it to print to stdout, but that is all.

Present line:
Code:
$output .= "<FONT style='background:green;color:white;'>$router_routes</FONT><br><br>";

Replacement:
Code:
open(router_CHECK, "< /usr/local/home/router/router.check");
@datacheck = <router_CHECK>;
close(router_CHECK);
 
$output .= @datacheck;

File content example trying to load:
Code:
<p style="line-height: 100%; margin-top: 0; margin-bottom: 0">
ROUTER1#show run | inc 192.168.1.0
ip route 192.168.1.0 255.255.255.0 10.1.1.1
</p>
<p style="line-height: 100%; margin-top: 0; margin-bottom: 0">
ROUTER2#show run | inc 192.168.2.0
ip route 192.168.2.0 255.255.255.0 10.1.2.1
</p>

# 2  
Old 07-29-2011
Any suggestions?
# 3  
Old 07-29-2011
Hi,

I don't understand what you want. The '$output' variable has the content of the file, what doesn't work?

Regards,
Birei
# 4  
Old 07-29-2011
In the email everything except the array is printed. All I get a the number 1 for what is suppose to be printed from the array. I just don't understand why it's not working.
# 5  
Old 07-30-2011
Hi,

Try:
Code:
open(router_CHECK, "< /usr/local/home/router/router.check") || die "Cannot open file: $!\n"; 
@datacheck = <router_CHECK>; 
close(router_CHECK);   
$output .= "@datacheck";

Regards,
Birei
# 6  
Old 07-30-2011
You concatenate the array with the scalar variable so in a scalar context. In a scalar context when you use an array you get a number of elements in this array not its elements.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

perl filter unique and concatenate

Hi experts, I have some input like below, TEST A function W TEST A function X TEST B function Y TEST C function Z TEST C function ZY i would like to have below output, TEST A function W&X TEST B function Y TEST C function Z&ZY Please kindly help on this, i am cracking my head... (2 Replies)
Discussion started by: mingfatty
2 Replies

2. Shell Programming and Scripting

HELP on Perl array / sorting - trying to convert Korn Shell Script to Perl

Hi all, Not sure if this should be in the programming forum, but I believe it will get more response under the Shell Programming and Scripting FORUM. Am trying to write a customized df script in Perl and need some help with regards to using arrays and file handlers. At the moment am... (3 Replies)
Discussion started by: newbie_01
3 Replies

3. Shell Programming and Scripting

PERL : Read an array and write to another array with intial string pattern checks

I have an array and two variables as below, I need to check if $datevar is present in $filename. If so, i need to replace $filename with the values in the array. I need the output inside an ARRAY How can this be done. Any help will be appreciated. Thanks in advance. (2 Replies)
Discussion started by: irudayaraj
2 Replies

4. Shell Programming and Scripting

How to concatenate texts in perl only?

Hi, I want to concatenate the texts in the file but there are different scenario's. Ist Scenario. The contents of file has id`language,sequence number,text,language Here id`language is a key pair to identify the correct language. Sequnce number is the order the text being inserted. Text... (3 Replies)
Discussion started by: vanitham
3 Replies

5. Shell Programming and Scripting

Array in Perl - Detect several file to be in one array

Hi everyone I have one question about using array in perl. let say I have several log file in one folder.. example test1.log test2.log test3.log and the list goes on.. how to make an array for this file? It suppose to detect log file in the current directory and all the log file will... (3 Replies)
Discussion started by: sayachop
3 Replies

6. Shell Programming and Scripting

perl, put one array into many array when field is equal to sth

Hi Everyone, #!/usr/bin/perl use strict; use warnings; my @test=("a;b;qqq;c;d","a;b;ggg;c;d","a;b;qqq;c;d"); would like to split the @test array into two array: @test1=(("a;b;qqq;c;d","a;b;qqq;c;d"); and @test2=("a;b;ggg;c;d"); means search for 3rd filed. Thanks find the... (0 Replies)
Discussion started by: jimmy_y
0 Replies

7. Shell Programming and Scripting

Perl grep array against array

Hi, Is there any way I can grep an array against another array? Basically here's what I need to do. There will be an array containing some fixed texts and I have to check whether some files contain these lines. Reading the same files over and over again for each different pattern doesnt seem... (1 Reply)
Discussion started by: King Nothing
1 Replies

8. Shell Programming and Scripting

Concatenate Logs - Perl Question

Hi All, I am fresh to perl and had been using shell scripting in my past experiences. In my part of perl program, i am trying to run a application command ccm stop, which should give some string output as the result. The output (error or sucess) has to be returned to an exisiting log file.... (4 Replies)
Discussion started by: ganga.dharan
4 Replies

9. Shell Programming and Scripting

[Perl] Accessing array elements within a sed command in Perl script

I am trying to use a script to replace the header of each file, whose filename are stored within the array $test, using the sed command within a Perl script as follows: $count = 0; while ( $count < $#test ) { `sed -e 's/BIOGRF 321/BIOGRF 332/g' ${test} > 0`; `cat 0 >... (2 Replies)
Discussion started by: userix
2 Replies
Login or Register to Ask a Question