Sponsored Content
Full Discussion: A script need help
Top Forums Shell Programming and Scripting A script need help Post 303039361 by green_k on Wednesday 2nd of October 2019 12:08:26 AM
Old 10-02-2019
Quote:
Originally Posted by Yoda
Here is one approach using awk:-
Code:
awk -F= '
        /section/ {
                sc = $1
                S[sc]
                next
        }
        /^VALUE/ {
                A[sc FS $1] = $0
        }
        END {
                for ( k in S )
                        print k, A[k FS "VALUE1"] ? A[k FS "VALUE1"] : "MISSING", A[k FS "VALUE2"] ? A[k FS "VALUE2"] : "MISSING", A[k FS "VALUE3"] ? A[k FS "VALUE3"] : "MISSING"
        }
' file

thanks Yoda for your quick response. the code work with my sample data. it is my bad I didn't provide sample data correctly. the value1 , value2 and value3 don't have any relation. for example: CITY, REGION, STREET. I updated my post.

--- Post updated at 12:08 AM ---

Quote:
Originally Posted by Chubler_XL
And another awk approach:

Code:
awk -v want="VALUE1,VALUE2,VALUE3" -F'[=\\][]' '
function prnsection(i) {
   if(length(section)) {
     printf "%s",section;
     for(i=1;i in keypos;i++) {
       printf " %s", keys[keypos[i]]
       keys[keypos[i]]="MISSING"
     }
     printf "\n"
   }
}
BEGIN {
   for(i=split(want, keypos, ",");i;i--) {
       keys[keypos[i]]="MISSING";
   }
}
NF>2 { prnsection(); section=$0 }
$1 in keys { keys[$1]=$0 };
END { prnsection() }' infile

thanks Chubler_XL for you quick response, the code works as I expected.

Last edited by green_k; 10-02-2019 at 01:15 AM..
 

5 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

create a shell script that calls another script and and an awk script

Hi guys I have a shell script that executes sql statemets and sends the output to a file.the script takes in parameters executes sql and sends the result to an output file. #!/bin/sh echo " $2 $3 $4 $5 $6 $7 isql -w400 -U$2 -S$5 -P$3 << xxx use $4 go print"**Changes to the table... (0 Replies)
Discussion started by: magikminox
0 Replies

2. Shell Programming and Scripting

Script will keep checking running status of another script and also restart called script at night

I am using blow script :-- #!/bin/bash FIND=$(ps -elf | grep "snmp_trap.sh" | grep -v grep) #check snmp_trap.sh is running or not if then # echo "process found" exit 0; else echo "process not found" exec /home/Ketan_r /snmp_trap.sh 2>&1 & disown -h ... (1 Reply)
Discussion started by: ketanraut
1 Replies

3. UNIX for Dummies Questions & Answers

Calling a script from master script to get value from called script

I am trying to call a script(callingscript.sh) from a master script(masterscript.sh) to get string type value from calling script to master script. I have used scripts mentioned below. #masterscript.sh ./callingscript.sh echo $fileExist #callingscript.sh echo "The script is called"... (2 Replies)
Discussion started by: Raj Roy
2 Replies

4. Shell Programming and Scripting

Shell script works fine as a standalone script but not as part of a bigger script

Hello all, I am facing a weird issue while executing a code below - #!/bin/bash cd /wload/baot/home/baotasa0/sandboxes_finance/ext_ukba_bde/pset sh UKBA_publish.sh UKBA 28082015 3 if then echo "Param file conversion for all the areas are completed, please check in your home directory"... (2 Replies)
Discussion started by: ektubbe
2 Replies

5. Shell Programming and Scripting

How to block first bash script until second bash script script launches web server/site?

I'm new to utilities like socat and netcat and I'm not clear if they will do what I need. I have a "compileDeployStartWebServer.sh" script and a "StartBrowser.sh" script that are started by emacs/elisp at the same time in two different processes. I'm using Cygwin bash on Windows 10. My... (3 Replies)
Discussion started by: siegfried
3 Replies
Jifty::Client(3pm)					User Contributed Perl Documentation					Jifty::Client(3pm)

NAME
Jifty::Client - Subclass of WWW::Mechanize with extra Jifty features DESCRIPTION
This module is a base for building robots to interact with Jifty applications. It currently contains much overlapping code with "Jifty::Test::WWW::Mechanize", except that it does not inherit from "Test::WWW::Mechanize". Expect this code to be refactored in the near future. METHODS
new Overrides WWW::Mechanize's "new" to automatically give the bot a cookie jar. moniker_for ACTION, FIELD1 => VALUE1, FIELD2 => VALUE2 Finds the moniker of the first action of type ACTION whose "constructor" field FIELD1 is VALUE1, and so on. fill_in_action MONIKER, FIELD1 => VALUE1, FIELD2 => VALUE2, ... Finds the fields on the current page with the names FIELD1, FIELD2, etc in the MONIKER action, and fills them in. Returns the HTML::Form object of the form that the action is in, or undef if it can't find all the fields. action_form MONIKER [ARGUMENTNAMES] Returns the form (as an HTML::Form object) corresponding to the given moniker (which also contains inputs for the given argumentnames), and also selects it as the current form. Returns undef if it can't be found. action_field_value MONIKER, FIELD Finds the fields on the current page with the names FIELD in the action MONIKER, and returns its value, or undef if it can't be found. send_action CLASS ARGUMENT => VALUE, [ ... ] Sends a request to the server via the webservices API, and returns the Jifty::Result of the action. "CLASS" specifies the class of the action, and all parameters thereafter supply argument keys and values. The URI of the page is unchanged after this; this is accomplished by using the "back button" after making the webservice request. fragment_request PATH ARGUMENT => VALUE, [ ... ] Makes a request for the fragment at PATH, using the webservices API, and returns the string of the result. field_error_text MONIKER, FIELD Finds the error span on the current page for the name FIELD in the action MONIKER, and returns the text (tags stripped) from it. (If the field can't be found, return undef). uri WWW::Mechanize has a bug where it returns the wrong value for "uri" after redirect. This fixes that. See http://rt.cpan.org/NoAuth/Bug.html?id=9059 session Returns the server-side Jifty::Web::Session object associated with this Mechanize object. continuation [ID] Returns the current continuation of the Mechanize object, if any. Or, given an ID, returns the continuation with that ID. current_user Returns the Jifty::CurrentUser object or descendant, if any. SEE ALSO
Jifty::Test::WWW::Mechanize LICENSE
Jifty is Copyright 2005-2010 Best Practical Solutions, LLC. Jifty is distributed under the same terms as Perl itself. perl v5.14.2 2011-04-14 Jifty::Client(3pm)
All times are GMT -4. The time now is 08:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy