Sponsored Content
Top Forums Shell Programming and Scripting AWK pattern matching, first and last Post 302152948 by ghostdog74 on Saturday 22nd of December 2007 12:25:39 PM
Old 12-22-2007
Code:
awk '
/H##$/{exit}
/#M/,/M#$/ { 
  # assuming Who, When, Why structure 
  # and 3rd field is the "When" column
  if ( $3 ~ /[1-3][1-9]\.[0-1][1-9]\.20[0-1][1-9]/) { 
       lastmod = $3      
  }  
}
/#[PACIDM#]/{ 
    gsub(/#[PACIDM#]|[PACIDM#]#/,"")  
}
/^###*|*\.\.|\/*H|[oO]utputs/{next}
1
END {
  print "Last modified: " lastmod
}
' *code

output:
Code:
# ./test.sh

 Purpose : Creates generation datasets from the original source file

 Author  : D Turpin
 Date    : 1st November 2007

 Inputs  : data.table1
           data.table2


 Who When       Why                                                Version

 DT  01.11.2007 Initial Development                                1.00
 DT  15.11.2007 Modified to include new reqs                       1.01
                and other things

Last modified: 15.11.2007


Last edited by ghostdog74; 12-22-2007 at 09:28 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

pattern matching using awk.

Dear Team, How do we match two patterns on the same line using awk?Are there any logical operators which i could use in awk like awk '\gokul && chennai\' <filename> Eg: Input file: gokul,10/11/1986,coimbatore. gokul,10/11/1986,bangalore. gokul,12/04/2008,chennai.... (2 Replies)
Discussion started by: gokulj
2 Replies

2. Shell Programming and Scripting

AWK pattern matching

Hi, How can I tell awk to print all lines/columns if column number 5 contains the word Monday? I have tried nawk -F, '$5==Monday' OFS=, myfile > outputfile but that doesn't work (I am a newb!!) Thanks, (7 Replies)
Discussion started by: keenboy100
7 Replies

3. Shell Programming and Scripting

Awk -simple pattern matching

Find bumblebee and Megatron patterns (input2) in input1. If it is + read input1 patterns from Left to Right if it is - read input1 patterns from Right to Left Y= any letter (A/B/C/D) input1 c1 100 120 TF01_X1 + AABDDAAABDDBCADBDABC c2 100 120 TF02_X2 - AABDDAAABDDBCBACDBBC... (2 Replies)
Discussion started by: bumblebee_2010
2 Replies

4. Shell Programming and Scripting

AWK:- matching pattern search

Dear Friends, I have a flat file. To pick certain details we have written an awk where we are facing difficulty. Sample of flat file. line 1 line 2 line 3 line 4 line 5 line 6 line 7 line 8 line 9 line 10 line 11 line 12 line 13 line 14 (Matching pattern "Lkm_i-lnr:"can be... (4 Replies)
Discussion started by: anushree.a
4 Replies

5. UNIX for Dummies Questions & Answers

awk - pattern matching?

Hello all, I am trying to sort thru a database and print all the customers whose first names are only four characters. I just want to pull the first name only from the database. the database records appear like this in file: Mike Harrington:(510) 548-1278:250:100:175; first is name Mike... (4 Replies)
Discussion started by: citizencro
4 Replies

6. Shell Programming and Scripting

AWK pattern matching on loop

Hi, I am still a beginner on shell scripting so please bear with me. What i am trying to do is filter my logfile based on some ID on field 24 which is defined in array. The filter result output will be moved to my log folder with the same name. The problem is when not using loop, this command... (2 Replies)
Discussion started by: howielim
2 Replies

7. Shell Programming and Scripting

awk pattern matching

can somebody provide me with some ksh code that will return true if my the contents in my variable match anyone of these strings ORA|ERROR|SP2 variable="Error:ORA-01017: Invalid username/password; logon denied\nSP2-0640:Not connected" I tried this and it does not seem to work for me ... (3 Replies)
Discussion started by: BeefStu
3 Replies

8. Shell Programming and Scripting

awk pattern matching name in records

Hi, I'm very new to these forums. I was wondering if someone could help an AWK beginner with a pattern matching an actor to his appearance in movies, which would be stored as records. Let's say we have a database of 4 movies (each movie a record with name, studio + year, and actor fields with... (2 Replies)
Discussion started by: Jill Ceke
2 Replies

9. Shell Programming and Scripting

Pattern matching using awk

Hi I am trying to find a pattern match with column one containing 3 numbers. input file tmp.lst abcd456|1|23123|123123|23423 kumadff|a|dadfadf|adfd|adfadfadf xxxd999|d|adfdfs|adfadf|adfdasfadf admin|a|dafdf|adfadfa||| output file tmp4.lst abcd456|1|23123|123123|23423... (3 Replies)
Discussion started by: vamsekumar
3 Replies

10. Shell Programming and Scripting

awk pattern matching

I have two files, want to compare file1 data with file2 second column and print line which are not matching. Need help in matching the pattern, file2 second column number can be leading 0 or 00 or 000. Example: file1 1 2 3 file2 a,0001 b,02 c,000 d,01 e,2 f,0005 Expected output:... (20 Replies)
Discussion started by: vegasluxor
20 Replies
MARC::Lint::CodeData(3pm)				User Contributed Perl Documentation				 MARC::Lint::CodeData(3pm)

NAME
MARC::Lint::CodeData -- Contains codes from the MARC code lists for Geographic Areas, Languages, and Countries. DESCRIPTION
Code data is used for validating fields 008, 040, 041, and 043. Also, sources for subfield 2 in 600-651 and 655. Stores codes in hashes, %MARC::Lint::CodeData::[name]. Note: According to the official MARC documentation, Sears is not a valid 655 term. The code data below treats it as valid, in anticipation of a change in the official documentation. SYNOPSIS
use MARC::Lint::CodeData; #Should provide access to the following: #%MARC::Lint::CodeData::GeogAreaCodes; #%MARC::Lint::CodeData::ObsoleteGeogAreaCodes; #%MARC::Lint::CodeData::LanguageCodes; #%MARC::Lint::CodeData::ObsoleteLanguageCodes; #%MARC::Lint::CodeData::CountryCodes; #%MARC::Lint::CodeData::ObsoleteCountryCodes; #%MARC::Lint::CodeData::Sources600_651; #%MARC::Lint::CodeData::ObsoleteSources600_651; #%MARC::Lint::CodeData::Sources655; #%MARC::Lint::CodeData::ObsoleteSources655; #or, import specific code list data use MARC::Lint::CodeData qw(%GeogAreaCodes); my $gac = "n-us---"; my $validgac = 1 if ($GeogAreaCodes{$gac}); print "Geographic Area Code $gac is valid " if $validgac; EXPORT
None by default. @EXPORT_OK: %GeogAreaCodes, %ObsoleteGeogAreaCodes, %LanguageCodes, %ObsoleteLanguageCodes, %CountryCodes, %ObsoleteCountryCodes, %Sources600_651, %ObsoleteSources600_651, %Sources655, %ObsoleteSources655. TO DO
Update codes as needed (see <http://www.loc.gov/marc/>). Add other codes for MARC Code Lists for Relators, Sources, Description Conventions. Determine what to do about 600-655 codes with indicators (cash, lcsh, lcshac, mesh, nal, and rvm). Currently, these are duplicated in valid and obsolete hashes. Validation routines should probably treat these differently due to large numbers of records using these codes, created before the indicators were allowed. Determine whether three blank spaces should be in the LanguageCodes (for 008 validation) or not. If it is here, then 041 would be allowed to have three blank spaces as a valid code (though other checks would report the error--spaces at the beginning and ending of a subfield and multiple spaces in a field where such a thing is not allowed). SEE ALSO MARC::Lint MARC::Lintadditions (for check_040, check_041, check_043 using these codes) MARC::Errorchecks (for 008 validation using these codes) <http://www.loc.gov/marc/> for the official code lists. The following (should be included in the distribution package for this package): countrycodelistclean.pl gaccleanupscript.pl languagecodelistclean.pl The scripts above take the MARC code list ASCII version as input. They output tab-separated codes for updating the data below. VERSION HISTORY
Version 1.28: Updated May 2, 2009. -Added new sources codes from Technical Notice of Oct. 10, 2008. -Added new sources codes from Technical Notice of Dec. 16, 2008. -Added new language codes from Technical Notice of Jan. 6, 2009 (mol moved to ObsoleteLanguageCodes). -Added new sources codes from Technical Notice of Jan. 23, 2009. -Added new sources codes from Technical Notice of Feb. 19, 2009. -Added new sources codes from Technical Notice of Apr. 22, 2009. Version 1.27: Updated Aug. 14, 2008. -Added new sources codes from Technical Notice of July 25, 2008. Version 1.26: Updated July 6, 2008. -Added new language codes from Technical Notice of July 1, 2008. -Moved obsolete language codes 'scc' and 'scr' to the obsolete language hash. Version 1.25: Updated Apr. 28, 2008. -Added new sources codes from Technical Notice of Apr. 25, 2008. Version 1.24: Updated Mar. 30, 2008. -Added new sources codes from Technical Notice of Mar. 28, 2008. Version 1.23: Updated Mar. 26, 2008. -Added new country and GAC codes from Technical Notice of Mar. 25, 2008. Version 1.22: Updated Jan. 21, 2008. -Added new sources codes from Technical Notice of Jan. 18, 2008. Version 1.21: Updated Nov. 30, 2007. -Added new sources codes from Technical Notice of Nov. 30, 2007. Version 1.20: Updated Nov. 19, 2007. -Added new language codes from Technical Notice of Nov. 16, 2007. Version 1.19: Updated Oct. 22, 2007. -Added new language codes from Technical Notice of Oct. 22, 2007. Version 1.18: Updated Aug. 14, 2007. -Added new source codes from Technical Notice of Aug. 13, 2007. Version 1.17: Updated July 16, 2007. -Added new source codes from Technical Notice of July 13, 2007. Version 1.16: Updated Apr. 18, 2007. -Added new source codes from Technical Notice of Apr. 5, 2007. Version 1.15: Updated Feb. 28, 2007. -Added new country and geographic codes from Technical Notice of Feb. 28, 2007. -Added 'yu ' to list of obsolete codes. Version 1.14: Updated Jan. 8, 2007. -Added new source codes from Technical Notice of Jan. 5, 2007. Version 1.13: Updated Nov. 19, 2006. -Added new source codes from Technical Notice of Nov. 14, 2006. Version 1.12: Updated Oct. 20, 2006. -Added new source code from Technical Notice of Oct. 19, 2006. Version 1.11: Updated Oct. 18, 2006. -Added new source codes from Technical Notice of Oct. 17, 2006. Version 1.10: Updated Aug. 30, 2006. -Added new source codes from Technical Notice of Aug. 29, 2006. Version 1.09: Updated June 26, 2006. -Added new source codes from Technical Notice of June 23, 2006. Version 1.08: Updated May 30, 2006. -Added new source codes from Technical Notice of May 26, 2006. Version 1.07: Updated Mar. 13, 2006. -Added new source codes from Technical Notice of Mar. 10, 2006. Version 1.06: Updated Feb. 23, 2006. -Added new language codes from Technical Notice of Feb 23, 2006. -Alphabetized language codes. Version 1.05: Updated Jan. 11, 2006. -Added new sources codes from Technical Notice of Jan. 10, 2006. Version 1.04: Updated Oct. 13, 2005. -Added new sources codes from Technical Notice of Oct. 12, 2005. Version 1.03: Updated Aug. 31, 2005. -Added new language codes for Ainu and Southern Altai (August 30, 2005 technical notice) Version 1.02: Updated June 21-July 12, 2005. Released (to CPAN) with new version of MARC::Errorchecks. -Added GAC and Country code changes for Australia (July 12, 2005 update) -Added 6xx subfield 2 source code data for June 17, 2005 update. -Updated valid Language codes to June 2, 2005 changes. Version 1.01: Updated Jan. 5-Feb. 10, 2005. Released (to CPAN) Feb. 13, 2005 (with new version of MARC::Errorchecks). -Added code list data for 600-651 subfield 2 and for 655 subfield 2 sources. -Updated codes based on changes made Jan. 19 (languages), Feb. 2 (sources), Feb. 9 (sources). Version 1.00 (original version): First release, Dec. 5, 2004. Uploaded to SourceForge CVS, Jan. 3, 2005. -Included in MARC::Errorchecks distribution on CPAN. -Used by MARC::Lintadditions. LICENSE
This code may be distributed under the same terms as Perl itself. Please note that this module is not a product of or supported by the employers of the various contributors to the code. AUTHOR
Bryan Baldus eijabb@cpan.org Copyright (c) 2004-2008. perl v5.10.0 2009-09-01 MARC::Lint::CodeData(3pm)
All times are GMT -4. The time now is 01:16 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy