Visit Our UNIX and Linux User Community


split record without pattern


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers split record without pattern
# 1  
Old 10-12-2011
split record without pattern

Hi ,

I have file with all records in one line, which needs to split it to have a fixed length.Am trying to execute the below script for the same

FILENAME="$1"
while line LINE
do
echo $LINE | awk 'BEGIN{n=1}{while(substr($0,n,10)){print substr($0,n,10);n+=10}}'
done < $FILENAME

it just displays the full line as it is...
abcdefghijklmn1234567890

instead of

abcdefghij
klmn123456
7890

Have tried with the fold -w10 as well..it seems to execute the
echo command alone..

Its quiet silly as the command executes file if executed outside the loop..
please help..

Last edited by nishantrk; 10-12-2011 at 08:20 AM..
# 2  
Old 10-12-2011
Quote:
Originally Posted by nishantrk
Have tried with the fold -w10 as well..it seems to execute the echo command alone..
I'm not clear on what you mean here.

With fold I get:
Code:
$ echo "abcdefghijklmn1234567890" | fold -w10
abcdefghij
klmn123456
7890

EDIT: Also, what is $part?
# 3  
Old 10-12-2011
Thanks for the quick reply...
Yes with command line it works..but when I put it in a scripts..its not working somehow..only the echo works..

FILENAME = "$1"
while line LINE
do
echo $LINE | fold -w10
done < $FILENAME
# 4  
Old 10-12-2011
Why don't you just :

Code:
fold -w10 $FILENAME

?

or just add the fold at the end of the line in your script:
Code:
echo $LINE | awk 'BEGIN{n=1}{while(substr($0,n,10)){print substr($0,n,10);n+=10}}' | fold -w10

# 5  
Old 10-12-2011
Thanks again..
 

Previous Thread | Next Thread
Test Your Knowledge in Computers #194
Difficulty: Easy
Perl was ranked in the top 10 according to the TIOBE Index for October 2019.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to split one record to multiple records?

Hi, I have one tab delimited file which is having multiple store_ids in first column seprated by pipe.I want to split the file on the basis of store_id(separating 1st record in to 2 records ). I tried some more options like below with using split,awk etc ,But not able to get proper output. can... (1 Reply)
Discussion started by: jaggy
1 Replies

2. Shell Programming and Scripting

Need to split record

Hi All, Need help in writing a shell script for the below requirement: i/p: 123456789 o/p: 123 456 789 Req: one record should be split into multiple based on the length ( after every third character it should be moved into next line) Thanks in Advance (14 Replies)
Discussion started by: HemaV
14 Replies

3. Shell Programming and Scripting

split content and write to new record

Hi, Help required to split record value and write to new row. Input a~b~c~value in ('3','4','5')~test output a~b~c~3~test a~b~c~4~test a~b~c~5~test input a~b~c~value in ('3','4')~test output a~b~c~3~test a~b~c~4~test (8 Replies)
Discussion started by: Jairaj
8 Replies

4. Shell Programming and Scripting

Reject the record if the record in the next line does not satisfy the pattern

Hi, I have a input file with the following entries: 1one 2two 3three 1four 2five 3six 1seven 1eight 1nine 2ten The output should be 1one 2two 3three 1four 2five 3six (2 Replies)
Discussion started by: supchand
2 Replies

5. Shell Programming and Scripting

split record based on delimiter

Hi, My inputfile contains field separaer is ^. 12^inms^ 13^fakdks^ssk^s3 23^avsd^ 13^fakdks^ssk^a4 I wanted to print only 2 delimiter occurence i.e 12^inms^ 23^avsd^ (4 Replies)
Discussion started by: Jairaj
4 Replies

6. Shell Programming and Scripting

Record split.

I want to keep only records contain length is 10 other records should remove from my original file without redirecting to other output file. Source 1234567890 123456789011234 abcdefghil Expected Result 1234567890 abcdefghil (9 Replies)
Discussion started by: Jairaj
9 Replies

7. Shell Programming and Scripting

Split a record based on particular match

Hi , I have a requirement to split the record based on particular match using UNIX. Case1: Input Record : 10.44.48.63;"Personals/Dating;sports";1441 Output Records : 10.44.48.63;Personals/Dating;1441;Original 10.44.48.63;sports;1441;Dummy Case2: Input Record : ... (5 Replies)
Discussion started by: mksuneel
5 Replies

8. Shell Programming and Scripting

How to split a file record

-Hi, I have a problem with parcing/spliting a file record into two parts and assigning the split parts to two viriables. The record is as follows: ftrn facc ttrd feed xref fsdb fcp ruldb csdb omom fordr ftxn fodb fsdc texc oxox reng ttrn ttxn fqdb ... (5 Replies)
Discussion started by: aoussenko
5 Replies

9. Shell Programming and Scripting

Split a record

UNIX Scripting Hi I am trying to read a record and split it into multiple records My Record looks like this 1001A0010@B0010*&^0)C0012hgdj&6sD0020fhfri93kivmepi9 where UniqueID is 1001 segments are A,B,C,D length of each segment is 4 characters after the segment 0010 for A 0010 for B 0012... (5 Replies)
Discussion started by: pukars4u
5 Replies

10. UNIX for Dummies Questions & Answers

Split a file with no pattern -- Split, Csplit, Awk

I have gone through all the threads in the forum and tested out different things. I am trying to split a 3GB file into multiple files. Some files are even larger than this. For example: split -l 3000000 filename.txt This is very slow and it splits the file with 3 million records in each... (10 Replies)
Discussion started by: madhunk
10 Replies

Featured Tech Videos