Sponsored Content
Top Forums UNIX for Beginners Questions & Answers awk unable to print array next to each other Post 303045735 by RudiC on Saturday 11th of April 2020 07:35:32 AM
Old 04-11-2020
Good to hear, although I'm getting a syntax error at or near { with your above code. After correction, the output doesn't quite look like the desired one in yur post #1.


Strong recommendation: Use - and stick to - a code structuring schema to your taste, like indenting and block building, for better readability, undaerstandability, and maintainability.


How about an approach like this one (adapt output field length if necessary):
Code:
awk '
BEGIN           {HCNT = split ("vc_MessageInformation|vc_AdditionalInfo|Result Code|AVP name|Message Type|Application Server Name", COLN, "|")
                 FMT  = "%-35.35s "
                 for (i=1; i<=HCNT; i++) printf FMT, COLN[i]
                 printf ORS
                }
                {for (i=1; i<=HCNT; i++)        {match ($0, COLN[i] "[^;,]*")
                                                 TMP = substr ($0, RSTART, RLENGTH)
                                                 sub (/^[^:]*: /, _, TMP)
                                                 printf FMT, TMP
                                                }
                 printf ORS
                } 
' file
vc_MessageInformation               vc_AdditionalInfo                   Result Code                         AVP name                            Message Type    ...
Location information cannot be obta Unexpected Error from HLR                                                                                   Sh-Pull         ...
User not defined in AS                                                                                                                          Sh-Notif        ...
SLh Service could not be processed  User identity was not located in an                                                                         SLh LCS-Routin  ...
Service could not be processed corr Database access failure                                                                                     Sh-Update       ...  
AVP error                           Missing AVP                         DIAMETER_MISSING_AVP                User-Name                           Sh-Pull         ...      
Invalid Sequence Number                                                                                                                         Sh-Update       ...
Inconsistency between user identiti User Identity does not correspond t                                                                         Sh-Pull         ...

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Unable to set a data to array

Hi All, Iam trying to set the value to the array... Still its not happening Following is the code: #!/usr/bin/ksh filenames="x"; filenames="y"; echo $filenames; echo $filenames; O/P: x x Iam expecting (2 Replies)
Discussion started by: kiranlalka
2 Replies

2. Solaris

Unable to access 3500 FC array. Where is the problem?..

Hi, I have two Sun Fire V490 with Solaris 10 5/08, FC switch and two Sun StorageTek 3500 FC arrays. Each array is connected to switch and to one server at a time. In the last week I installed Solaris 10 5/08 on both servers and set up Sun Cluster, version 3.2. At wednesday all was fine - all... (7 Replies)
Discussion started by: Sapfeer
7 Replies

3. Shell Programming and Scripting

awk: reading into an array and then print the value corresponding to index

I am beginner in awk awk 'BEGIN{for(i=1;(getline<"opnoise")>0;i++) arr=$1}{print arr}' In the above script, opnoise is a file, I am reading it into an array and then printing the value corresponding to index 20. Well this is not my real objective, but I have posted this example to describe... (19 Replies)
Discussion started by: akshaykr2
19 Replies

4. Shell Programming and Scripting

Print array into a single file - AWK

Hi all, I been looking for a solution to the fact that when I use: for (i=1; i<=NF; i++) print $ifields that are originally in a single line are printed in a single line I have severals files for which the first 7 are the same, but the number of variables after that can vary, for example NF... (5 Replies)
Discussion started by: PaulaL
5 Replies

5. Programming

Unable to assign zero to unsigned character array

Hi, I am unable to assign value zero to my variable which is defined as unsigned char. typedef struct ABCD { unsigned char abc; unsigned char def; unsigned char ghi; } ABCD; typedef ABCD *PABCD; In my Por*C code, i assign the values using memcpy like below ... (3 Replies)
Discussion started by: gthangav
3 Replies

6. Shell Programming and Scripting

Unable To access array in awk

Hi, i have the following code in which i am passing array tldn in awk using -v option & despite of that condition is not getting matched,can somebody suggest how to handle shell arrays in awk tcount=(9875 9667) awk -F"\t" -v ltldn="${tldn}" 'NR==FNR {POSTPAIDMDNS=$2"|"$3;next} ... (6 Replies)
Discussion started by: siramitsharma
6 Replies

7. UNIX for Dummies Questions & Answers

How To Print Array in awk?

Hello, May i please know how do i print the array using awk script. I am using below shell script to start with but not working. #!/bin/bash LOADSTATUS="Line 0" LOADSTATUS="Line 1" LOADSTATUS="Line 2" LOADSTATUS="Line 3" LOADSTATUS="Line 4" awk ' BEGIN { Your File Load Status }... (1 Reply)
Discussion started by: Ariean
1 Replies

8. Shell Programming and Scripting

Not getting array in .awk file and print it

I have test.sh file as below : set -A IDARR $ID echo | awk -f test.awk -v TempArr="${IDARR }" I have test.awk file as below : BEGIN { Flag = 1; } { print "Hello"; for(i in TempArr) { print i; } } (9 Replies)
Discussion started by: nes
9 Replies

9. Shell Programming and Scripting

awk to print array that occurs the most with matching value in another field

In the below awk I am splitting $7 on the : and then counting each line or NM_xxxx. If the $1 value is the same for each line then print the $7 that occurs the most with the matching $1 value. The awk seems close but I am not sure what is going on. I included a description as well as to what I... (1 Reply)
Discussion started by: cmccabe
1 Replies

10. Shell Programming and Scripting

Unable to print python array in shell script loop.

I am unable to loop print a python string array in my unix shell script: ~/readarr.sh '{{ myarr }}' more readarr.sh echo "Parameter 1:"$1 MYARRAY= $1 IFS= MYARRAY=`python <<< "print ' '.join($MYARRAY)"` for a in "$MYARRAY"; do echo "Printing Array: $a" done Can you... (10 Replies)
Discussion started by: mohtashims
10 Replies
PRINT(3)								 1								  PRINT(3)

print - Output a string

SYNOPSIS
int print (string $arg) DESCRIPTION
Outputs $arg. print is not actually a real function (it is a language construct) so you are not required to use parentheses with its argument list. PARAMETERS
o $arg - The input data. RETURN VALUES
Returns 1, always. EXAMPLES
Example #1 print examples <?php print("Hello World"); print "print() also works without parentheses."; print "This spans multiple lines. The newlines will be output as well"; print "This spans multiple lines. The newlines will be output as well."; print "escaping characters is done "Like this"."; // You can use variables inside a print statement $foo = "foobar"; $bar = "barbaz"; print "foo is $foo"; // foo is foobar // You can also use arrays $bar = array("value" => "foo"); print "this is {$bar['value']} !"; // this is foo ! // Using single quotes will print the variable name, not the value print 'foo is $foo'; // foo is $foo // If you are not using any other characters, you can just print variables print $foo; // foobar print <<<END This uses the "here document" syntax to output multiple lines with $variable interpolation. Note that the here document terminator must appear on a line with just a semicolon no extra whitespace! END; ?> NOTES
Note Because this is a language construct and not a function, it cannot be called using variable functions. SEE ALSO
echo(3), printf(3), flush(3), Heredoc syntax. PHP Documentation Group PRINT(3)
All times are GMT -4. The time now is 08:09 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy