Length validation


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Length validation
# 1  
Old 06-26-2013
Length validation

I am using below code to find the length of first column additionally I want the complete row which length is greater than 12.at the end I want the rows where first column data length is greater than 12.

Just it should validate and highlight the rows where length(first column) is greater than 12.

Example:
Code:
12354687999999999Çabc,98874556
12345Çdef,9887455
78945612,tyuh,5698742

Output should be:
Code:
Length Error-12354687999999999Çabc,98874556

Code:
for i in `cat src_SPS_d_Loan_Level_File_20130515_001.dat | awk -FÇ '{print length($1)}'`
do
  if [ $i -ge 12 ]
  then
    echo ServicerID have higher precision
  else
 echo ServicerID have lesser precision
  fi
done


Last edited by Scott; 07-01-2013 at 07:33 AM.. Reason: Code tags for code and data, not text
# 2  
Old 06-26-2013
try..

Code:
 
awk -F"," '{if(length($1)>12){print "Service ID have higher precision"}else{print "Service ID have lesser precision"}}' filename

# 3  
Old 06-26-2013
i think above code will just print higher precision or lesser precision,i need a complete row which has higher precision.
# 4  
Old 06-26-2013
then try

Code:
 
awk -F"," '{if(length($1)>12){print "Row: $0\nService ID have higher precision"}else{print "Row:$0\nService ID have lesser precision"}}' filename

Alter this as per your req its very easy Smilie
# 5  
Old 06-26-2013
Wheni run above command,i am getting result as below.i am not getting row.
Code:
  
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision
Row:$0
Service ID have lesser precision


Last edited by Scott; 07-01-2013 at 07:33 AM.. Reason: Code tags for code and data, not text
# 6  
Old 06-26-2013
Use below just modified.

Code:
awk -F"," '{if(length($1)>12){print "Row:" $0 "\nService ID have higher precision"}else{print "Row:" $0 "\nService ID have lesser precision"}}' filename


Last edited by Franklin52; 06-26-2013 at 11:02 AM.. Reason: Code tags
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Datatype and length validation

I have sourcefile and structure of source file,i want to check whether datatype and length mention in emp.txt is same as source file. Example: in emp.txt first row contains sno number so in source file also first column should contain only number if data is other than number then that... (1 Reply)
Discussion started by: katakamvivek
1 Replies

2. Shell Programming and Scripting

Flat file-make field length equal to header length

Hello Everyone, I am stuck with one issue while working on abstract flat file which i have to use as input and load data to table. Input Data- ------ ------------------------ ---- ----------------- WFI001 Xxxxxx Control Work Item A Number of Records ------ ------------------------... (5 Replies)
Discussion started by: sonali.s.more
5 Replies

3. Shell Programming and Scripting

changing a variable length text to a fixed length

Hi, Can anyone help with a effective solution ? I need to change a variable length text field (between 1 - 18 characters) to a fixed length text of 18 characters with the unused portion, at the end, filled with spaces. The text field is actually field 10 of a .csv file however I could cut... (7 Replies)
Discussion started by: dc18
7 Replies

4. Shell Programming and Scripting

Make variable length record a fixed length

Very, very new to unix scripting and have a unique situation. I have a file of records that contain 3 records types: (H)eader Records (D)etail Records (T)railer Records The Detail records are 82 bytes in length which is perfect. The Header and Trailer records sometimes are 82 bytes in... (3 Replies)
Discussion started by: jclanc8
3 Replies

5. Shell Programming and Scripting

AWK - Line length validation

Hi, I have requirement where record length is stored in an variable RECORD_LENGTH Code goes as follows RECORD_LENGTH=537 the above is arrived from #RECORD_LENGTH=`awk -F"=" '{$sum+=$2} END{print $sum}' DBP_Claims_CFG.ini` awk ' { if (length() == '$RECORD_LENGTH') print FNR, $0... (4 Replies)
Discussion started by: ainuddin
4 Replies

6. UNIX for Dummies Questions & Answers

What the command to find out the record length of a fixed length file?

I want to find out the record length of a fixed length file? I forgot the command. Any body know? (9 Replies)
Discussion started by: tranq01
9 Replies

7. Shell Programming and Scripting

AWK - Line length validation

I am attempting to use awk to validate the length of each line in a fixed-width raw data file prior to reading in the data. I am happy with.... {if (length() == 403) print > "valid.file"; else print > " invalid.file" } ...to separate out the valid length lines from invalid length... (3 Replies)
Discussion started by: en7smb
3 Replies

8. UNIX for Dummies Questions & Answers

Sed working on lines of small length and not large length

Hi , I have a peculiar case, where my sed command is working on a file which contains lines of small length. sed "s/XYZ:1/XYZ:3/g" abc.txt > xyz.txt when abc.txt contains lines of small length(currently around 80 chars) , this sed command is working fine. when abc.txt contains lines of... (3 Replies)
Discussion started by: thanuman
3 Replies

9. Shell Programming and Scripting

creating a fixed length output from a variable length input

Is there a command that sets a variable length? I have a input of a variable length field but my output for that field needs to be set to 32 char. Is there such a command? I am on a sun box running ksh Thanks (2 Replies)
Discussion started by: r1500
2 Replies
Login or Register to Ask a Question