Sponsored Content
Full Discussion: Split file by data group
Top Forums Shell Programming and Scripting Split file by data group Post 302372261 by danmero on Tuesday 17th of November 2009 01:11:30 PM
Old 11-17-2009
Wrench

OP, base on your data sample and required output:
Code:
# cat awk.script
BEGIN{
        x="|"
        y=".dat"
        z="category|style|texture|color|srm|og|sp|comment"
     }
END{print r > (n y)}
        int($1)"."==$1{
                        if(r){
                                print r > (n y)
                                r=""
                             }
                        sub($1FS,"")
                        n=$0
                        }
        $1 ~ /[A-Z]\./{
                        sub($1FS,"")
                        r  = r ? r ORS n x $0: z ORS n x $0
                        }
        /vital/{
                        gsub(/[a-z]| /,"")
                        gsub("::","")
                        gsub(":","|")
                        r = r x $0
                }
        /^[a-z]/{
                        r = r x substr($0,(match($0,":")+2))
                }
# awk -f awk.script sample_file
# cat Light.dat
category|style|texture|color|srm|og|sp|comment
Light|Light Soft|it's soft|the color value is that of something light|23|1.035|1.065|this is nice if you like light colored soft things
Light|Medium|it's soft-ish|the color is similar to light soft but because of the difference in texture it appears slightly darker to the naked eye|30|1.020|1.070|this is nice if you like light colored soft-ish things
# cat German\ Stlye.dat
category|style|texture|color|srm|og|sp|comment
German Stlye|Blue Jeans|jeany|blue stoopid|22|1.045|1.211|german blue jeans are really different that other blue jeans.
# cat Last\ Example\ Category.dat
category|style|texture|color|srm|og|sp|comment
Last Example Category|This is stoopid|huh?|umm... white and black?|11|1.222|1.222|ugg

That was too much to fit in one line Smilie

PS. Use gawk, nawk or /usr/xpg4/bin/awk on Solaris.
 

10 More Discussions You Might Find Interesting

1. HP-UX

Need to split a large data file using a Unix script

Greetings all: I am still new to Unix environment and I need help with the following requirement. I have a large sequential file sorted on a field (say store#) that is being split into several smaller files, one for each store. That means if there are 500 stores, there will be 500 files. This... (1 Reply)
Discussion started by: SAIK
1 Replies

2. Shell Programming and Scripting

Can I split a 10GB file into 1 GB sizes using my repeating data pattern

I'm not a unix guy so excuses my ignorance... I'm the database ETL guy. I'm trying to be proactive and devise a plan B for a ETL process where I expect a file 10X larger than what I process daily for a recast job. The ETL may handle it but I just don't know. This file may need to be split... (3 Replies)
Discussion started by: john091
3 Replies

3. Shell Programming and Scripting

split file based on group count

Hi, can some one please help me to split the file based on groups. like in the below scenario x indicates the begining of the group and the file should be split each with 2 groups below there are 10 groups it should create 5 files. could you please help? (4 Replies)
Discussion started by: hitmansilentass
4 Replies

4. Shell Programming and Scripting

Split, Search and Reformat by Data Group

Hi, I am writing just to share my appreciation for help I have received from this site in the past. In a previous post Split File by Data Group I received a lot of help with a troublesome awk script to reformat some complicated data blocks. What I learned really came in hand recently when I... (1 Reply)
Discussion started by: mkastin
1 Replies

5. Shell Programming and Scripting

split input data file and put into same output file

Hi All, I have two input file and need to generate a CSV file. The existing report just "GREP" the records with the Header and Tailer records with the count of records. Now i need to split the data into 25 records each in the same CSV file. id_file (Input file ) 227050994 232510151... (4 Replies)
Discussion started by: rasmith
4 Replies

6. Shell Programming and Scripting

How to split a data file into separate files with the file names depending upon a column's value?

Hi, I have a data file xyz.dat similar to the one given below, 2345|98|809||x|969|0 2345|98|809||y|0|537 2345|97|809||x|544|0 2345|97|809||y|0|651 9685|98|809||x|321|0 9685|98|809||y|0|357 9685|98|709||x|687|0 9685|98|709||y|0|234 2315|98|809||x|564|0 2315|98|809||y|0|537... (2 Replies)
Discussion started by: nithins007
2 Replies

7. Shell Programming and Scripting

Split File data using awk

HI Guys, I need to split the file in to number of files . file contains FILEHEADER and EOF . I have to split n number of times . I have to form the file with each splitted message between FILEHEADER and EOF using awk beign and end . how to implement please suggest. (2 Replies)
Discussion started by: manish8484
2 Replies

8. Shell Programming and Scripting

Split a file into several files using a data

Hi All, I have file(File1) with data like below: 102100|LName|Gender|Company|Branch|Bday|Salary|Age 102100|bbbb|male|cccc|dddd|19900814|15000|20| 102101|asdg|male|gggg|ksgu|19911216||| 102102|bdbm|male|kkkk|acke|19931018||23| 102102|kfjg|male|kkkc|gkgg|19921213|14000|24|... (2 Replies)
Discussion started by: sarav.shan
2 Replies

9. Solaris

Create file for group of data:

Hi folks, I have the following data.Any help is greatly appreciated. order File_name 7222245 7222245.pdf 7222245 7222245a.pdf 7222245 7222245b.pdf 7222245 7222245c.pdf 7222245 7222245d.pdf 7222250 ... (1 Reply)
Discussion started by: kumar444
1 Replies

10. UNIX for Dummies Questions & Answers

Split binary file every occurrence of a group of characters

Hello I am new to scripts, codes, bash, terminal, etc. I apologize this my be very scattered because I frankly don't have any idea where to begin and I have had trouble sleeping lately. I have several 2GB files I wish to split. This Code 00 00 01 BA ** ** ** ** ** ** ** ** C3 F8 00 00 01 BB 00... (17 Replies)
Discussion started by: PatrickE
17 Replies
vga_setegacolor(3)						Svgalib User Manual						vga_setegacolor(3)

NAME
vga_setegacolor - set the current color SYNOPSIS
#include <vga.h> void vga_setegacolor(int color); DESCRIPTION
Set the current color to be a color resembling the color-th EGA coler. This works regardless of the depth of the current video mode. The color is used by vga_drawpixel(3) and vga_drawline(3). Valid values for color are: 0 - black. 1 - blue. 2 - green. 3 - cyan. 4 - red. 5 - magenta. 6 - brown. 7 - grey. 8 - dark grey (light black). 9 - light blue. 10 - light green. 11 - light cyan. 12 - light red. 13 - light magenta. 14 - yellow (light brown). 15 - white (light grey). The fun(6) and vgatest(6) demos show the basic use of this function. SEE ALSO
svgalib(7), vgagl(7), libvga.config(5), fun(6), vgatest(6), vga_setcolor(3), vga_setrgbcolor(3), vga_drawpixel(3), vga_drawline(3) AUTHOR
This manual page was edited by Michael Weller <eowmob@exp-math.uni-essen.de>. The exact source of the referenced function as well as of the original documentation is unknown. It is very likely that both are at least to some extent are due to Harm Hanemaayer <H.Hanemaayer@inter.nl.net>. Occasionally this might be wrong. I hereby asked to be excused by the original author and will happily accept any additions or corrections to this first version of the svgalib manual. Svgalib (>;= 1.2.11) 27 July 1997 vga_setegacolor(3)
All times are GMT -4. The time now is 08:05 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy