Read Table in file and split


 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Read Table in file and split
# 8  
Old 08-15-2019
Quote:
Originally Posted by Abdellah
Thank you for your help , i have created this one but it show all the file content ...
Code:
awk -F"|" ' {
        if ($2!="UP"){
           print "Node" $1 "is" $2 ;
        }
        else {
           print "All Nodes OK" ;
}
}' db_status.txt  | awk '/-------/{flag=1;next}/rows/{flag=0}flag'

thank you
you'll have work on your logic (I'll leave it as an exercise for you), but your modified attempt is:
Code:
awk -F'|' 'FNR>1 && NF==2{
        if ($2 ~ "^ *UP *$")
           print "Node" $1 "is" $2 ;
        else
           print "All Nodes OK" ;
}' db_status.txt


Last edited by vgersh99; 08-15-2019 at 10:02 AM..
# 9  
Old 08-15-2019
thank you rdrtx1,
the first if is working fine, but the second is not working (if all databases is UP the program not printing anything)
# 10  
Old 08-15-2019
Can you post a sample input file for the second?

Updated sample runs with updated second script:
Code:
cat << NODES > db_status.txt
Name  |   Status
------------------
DB 1   |  UP
DB 2  |  UP
DB 3  |  UP
DB 4  |  UP
DB 5  |  UP
NODES

awk '
/^Name/ || /^ *--* *$/ {next}
/..*[|]..*/ {
   if ($NF !~ /[Uu][Pp]/) {
      node=$0;
      sub(" *[|].*", "", node);
      print "Node: " node " is " $NF;
      bad_node=1;
   }
}
END {
   if (! bad_node) print "All Nodes OK";
}' db_status.txt

output:
Code:
All Nodes OK

next run ex.:
Code:
cat << NODES > db_status.txt
Name  |   Status
------------------
DB 1   |  UP
DB 2  |  UP
DB 3  |  DOWN
DB 4  |  UP
DB 5  |  UP
NODES

awk '
/^Name/ || /^ *--* *$/ {next}
/..*[|]..*/ {
   if ($NF !~ /[Uu][Pp]/) {
      node=$0;
      sub(" *[|].*", "", node);
      print "Node: " node " is " $NF;
      bad_node=1;
   }
}
END {
   if (! bad_node) print "All Nodes OK";
}' db_status.txt

output:
Code:
Node: DB 3 is DOWN


Last edited by rdrtx1; 08-15-2019 at 11:00 AM..
This User Gave Thanks to rdrtx1 For This Post:
# 11  
Old 08-15-2019
Code:
awk -F"|" ' {
        if ( ! /UP/){
           print "Node" $1 "is" $2 ;
        }
        else {
           print "All Nodes OK" ;
}
}' db_status.txt  | awk '/-------/{flag=1;next}/rows/{flag=0}flag'

Thas give me a correct answer
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Read from file and split varialble

Hello Experts, Can anybody assist me in writing a code to do the following: I have a file present in the same directory from where this cod would run. The content of the file would be as below: Config Filename: config_details.txt Format: Server_prefix,IP_of_server,username, password,... (1 Reply)
Discussion started by: chetanojha
1 Replies

2. UNIX for Beginners Questions & Answers

Improving find to read table name from file

Hi there, I currently use the following find command to recursively search all the subdirectories in our file system for a table ( in this case BB_TENURE_DAYS) find -type f -exec grep -l "BB_TENURE_DAYS" {} \+ So I have this so far - the problem is how do I read the line to get the... (2 Replies)
Discussion started by: rjsha1
2 Replies

3. Shell Programming and Scripting

How to read a text file line by line and insert into a database table?

I have a test file that I want to read and insert only certain lines into the the table based on a filter. 1. Rread the log file 12 Hours back Getdate() -12 Hours 2. Extract the following information on for lines that say "DUMP is complete" A. Date B. Database Name C.... (2 Replies)
Discussion started by: JolietJake
2 Replies

4. Shell Programming and Scripting

awk file to read values from Db2 table replacing hard coded values

Hi, I want to replace a chain of if-else statement in an old AWK file with values from Db2 table or CSV file. The part of code is below... if (start_new_rec=="true"){ exclude_user="false"; user=toupper($6); match(user, "XXXXX."); if (RSTART ==2 ) { ... (9 Replies)
Discussion started by: asandy1234
9 Replies

5. Shell Programming and Scripting

How to read and Split a file?

Hi, I have a .csv file which I want to split into smaller files as .csv format only Thanks in advance. (26 Replies)
Discussion started by: azherkn3
26 Replies

6. UNIX and Linux Applications

Single table or split the table

I have an application that collect data from 10 server every minutes and stored to mysql db,. there are about 10K record from each server on every minutes. that data will need to stored in 1 month. Which ones is better, create single table for all servers and put field to identified data... (3 Replies)
Discussion started by: before4
3 Replies

7. Shell Programming and Scripting

Read in Table as a matrix

Dear forum users, i'm trying to read a table with 40x122 data in a array. Following this, i'd plot each rows again the header of the file in gnuplot. i was thinking for something like that #!/bin/bash # reads from the $ips file and assigns to $MYARRAY #IFS =";" split the line after the... (6 Replies)
Discussion started by: servuskelb
6 Replies

8. Shell Programming and Scripting

Read parameter file in a shell script to unload a DB2 Table???

Hi , I Have following requirement: DB2 Sql query to pass from a parameter file for example, I would create a parameter file with (SELECT column 1, column 2 FROM Table name) then job would read it and create a file with the contents named table.txt How to write/modify below ksh script to... (10 Replies)
Discussion started by: developer.dwh9
10 Replies

9. Shell Programming and Scripting

Read Table,View,Package,Function and Procedure Name in a File

Hi I am new to Unix shell scripting. But i need help to slove the below issue. Issue description: I want to read table, view names and package names in a file my plan to find the table name is : search "From" key word find the table or view To find the packge name : Search "Package... (5 Replies)
Discussion started by: sboss
5 Replies

10. Shell Programming and Scripting

shell script to read data from text file and to load it into a table in TOAD

Hi....can you guys help me out in this script?? Below is a portion text file and it contains these: GEF001 000093625 MKL002510 000001 000000 000000 000000 000000 000000 000001 GEF001 000093625 MKL003604 000001 000000 000000 000000 000000 000000 000001 GEF001 000093625 MKL005675 000001... (1 Reply)
Discussion started by: pallavishetty
1 Replies
Login or Register to Ask a Question