Reading file and matching it from set of file

 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Reading file and matching it from set of file
# 8  
Old 10-03-2017
Quote:
Originally Posted by RudiC
Shouldn't that be substr($0,1,8) in A?
Yes. But on most versions of awk that I have used, both produce the same results.

Quote:
I wasn't sure if the substring to be compared had to be in chars 1 - 8 or start in 1 - 8 , i.e. possibly be from 8 - 15
Me either. That is why telling us what operating system and shell are being used and sample input and desired output are so important.
# 9  
Old 10-03-2017
I'm afraid they don't:
Code:
awk ' {print FILENAME, substr($0,0,8), substr($0,1,8)}  ' unmatch 50.1 51.1
50.1 1234567 12345678
50.1 0123456 01234567

0,8 yields 7 chars, not 8, at least with my linux' mawk. In FreeBSD's awk, it seems to yield 8 chars in either case.
# 10  
Old 10-03-2017
Quote:
Originally Posted by RudiC
I'm afraid they don't:
Code:
awk ' {print FILENAME, substr($0,0,8), substr($0,1,8)}  ' unmatch 50.1 51.1
50.1 1234567 12345678
50.1 0123456 01234567

0,8 yields 7 chars, not 8, at least with my linux' mawk. In FreeBSD's awk, it seems to yield 8 chars in either case.
FWIW I could not find one awk that showed a difference, including all awk's on Solaris, AIX and HPUX. Even my version of (mawk 1.3.4 20100625) worked well.
On CentOS it worked fine as well mawk 1.3.4 20161120.

So maybe it is a bug in that particular version?


From the change log:
Code:
20090726
[..]
	+ modify workaround for (incorrect) scripts which use a zero-parameter
	  for substr to ensure the overall length of the result stays the same.
	  For example, from makewhatis:
		filename_no_gz = substr(filename, 0, RSTART - 1);


Last edited by Scrutinizer; 10-03-2017 at 10:32 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

awk to update file with partial matching line in another file and append text

In the awk below I am trying to cp and paste each matching line in f2 to $3 in f1 if $2 of f1 is in the line in f2 somewhere. There will always be a match (usually more then 1) and my actual data is much larger (several hundreds of lines) in both f1 and f2. When the line in f2 is pasted to $3 in... (4 Replies)
Discussion started by: cmccabe
4 Replies

2. Shell Programming and Scripting

ksh Script, Reading A File, Grepping A File Contents In Another File

So I'm stumped. First... APOLOGIES... my work is offline in an office that has zero internet connectivity, as required by our client. If need be, I could print out my script attempts and retype them here. But on the off chance... here goes. I have a text file (file_source) of terms, each line... (3 Replies)
Discussion started by: Brusimm
3 Replies

3. Shell Programming and Scripting

Find matching file in bash with variable file names but consisent prefixs

As part of a bash the below line strips off a numerical prefix from directory 1 to search for in directory 2. for file in /home/cmccabe/Desktop/comparison/missing/*.txt do file1=${file##*/} # Strip off directory getprefix=${file1%%_*.txt} ... (5 Replies)
Discussion started by: cmccabe
5 Replies

4. Shell Programming and Scripting

Shell script to filter records in a zip file that contains matching columns from another file

Not sure if this is the correct forum for this question. I have two files. file1.zip, file2 Input: file1.zip col1, col2 , col3 a , b , 0:0:0:0:0:c436:9346:d40b x, y, 0:0:0:0:0:880:39f9:c9a7 m, n , 0:0:0:0:0:80c7:9161:fe00 file2.txt col1 c4:36:93:46:d4:0b... (1 Reply)
Discussion started by: anil.v
1 Replies

5. UNIX for Dummies Questions & Answers

Reading Xml file and print the values into the text file in columnwise?

hi guys, i want help... Reding XML file and print the values into the text file using linux shell script file as per below xml file <sequence> <Filename>aldorzum.doc</Filename> <DivisionCode>US</DivisionCode> <ContentType>Template</ContentType> <ProductCode>VIMZIM</ProductCode> </sequence>... (4 Replies)
Discussion started by: sravanreddy
4 Replies

6. Shell Programming and Scripting

awk - writing matching pattern to a new file and deleting it from the current file

Hello , I have comma delimited file with over 20 fileds that i need to do some validations on. I have to check if certain fields are null and then write the line containing the null field into a new file and then delete the line from the current file. Can someone tell me how i could go... (2 Replies)
Discussion started by: goddevil
2 Replies

7. Shell Programming and Scripting

Searching for Log / Bad file and Reading and writing to a flat file

Need to develop a unix shell script for the below requirement and I need your assistance: 1) search for file.log and file.bad file in a directory and read them 2) pull out "Load_Start_Time", "Data_File_Name", "Error_Type" from log file 4) concatinate each row from bad file as... (3 Replies)
Discussion started by: mlpathir
3 Replies

8. Shell Programming and Scripting

Reading lines in a file matching a pattern

Hi, I need to redirect the lines in a file to a different file if the character starting from 2 to 6 in the line are numerical . Please let me know if anyone have any script to do this. Thanks, Ranjit (4 Replies)
Discussion started by: torenji
4 Replies

9. UNIX for Advanced & Expert Users

Reading a file and writing the file name to a param file.

Hi All, Not sure if this would be in a dummies sectiin or advanced. I'm looking for a script if someone has doen something like this. I have list of files - adc_earnedpoints.20070630.txt adc_earnedpoints.20070707.txt adc_earnedpoints.20070714.txt adc_earnedpoints.20070721.txt... (1 Reply)
Discussion started by: thebeginer
1 Replies

10. Shell Programming and Scripting

Reading file names from a file and executing the relative file from shell script

Hi How can i dynamically read files names from a list file and execute them from a single shell script. Please help its urgent Thanks in Advance (4 Replies)
Discussion started by: anushilrai
4 Replies
Login or Register to Ask a Question