Sponsored Content
Full Discussion: Tabulate data in a table.
Top Forums Shell Programming and Scripting Tabulate data in a table. Post 302984007 by Don Cragun on Wednesday 19th of October 2016 04:33:24 PM
Old 10-19-2016
I agree with RudiC that the leading CONTINUE line makes no sense in your 1st sample input file. The following code silently ignores that line. Maybe something like:
Code:
#!/bin/bash
find . -name '*.txt' |
  awk '
  {	path = $0
	for(i in line)
		delete line[i]
	mlc = lc = 0
  	while((rc = (getline < path)) == 1) {
		if(!NF)	continue
		else if($0 == "CONTINUE")
			lc = 0
		else if($0 == "DONE") {
			close(path)
			if(mlc) {
				for(i = 1; i <= mlc; i++)
					print line[i] > path
				printf("%d line table placed in \"%s\".\n", mlc,
				    path)
			} else	printf("No data found in \"%s\".\n", path)
			break
		} else {if(++lc > mlc)
				mlc = lc
			line[lc] = ((line[lc] != "") ? line[lc] " " : "") $0
		}
	}
	if(rc == 0)
		printf("Previously converted \"%s\"?  DONE not found.\n", path)
	else if(rc == -1)
		printf("Error while reading \"%s\"!  No changes made.\n", path)
	close(path)
  }'

will give you something close to what you want???

If your sample input files are named 1.txt, 2.txt, and 3.txt, respectively, running the above code produces the output:
Code:
3 line table placed in "./1.txt".
4 line table placed in "./2.txt".
4 line table placed in "./3.txt".

and changes the contents of 1.txt to:
Code:
ages-eligible-for-study: 18-months-to-36-months
genders-eligible-for-study: both
accepts-healthy-volunteers: yes

2.txt to:
Code:
non-electric-grass-pitch 10-x
electric-grass-pitch 10-x
towan-two-bedroom-holiday-home 6-x
crantock-two-bedroom-apartment 4-x

and 3.txt to:
Code:
size alt axlt a2xlt a3xlt
waist-(on-half) 14" 15" 16" 17"
hip-(on-half) 24-3/4" 26-3/4" 28-3/4" 30-3/4"
inseam 34" 34-1/2" 35" 35-1/2"

If someone else would like to try this code on a Solaris/SunOS system, change awk to /usr/xpg4/bin/awk or nawk.
This User Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Showing several data in one table

hi again :$ i am creating a script to be able to monitor a machine's performance. the code in the file is: ================q============== sar 2 3 |awk '{print $3}' vmstat 2 3 |awk '{print $19 " " $21}' iostat -cx 2 3 |awk '{print $8 " " $10 " " $13}' ================uq============= the... (4 Replies)
Discussion started by: mohamedh_14
4 Replies

2. Shell Programming and Scripting

Data table

Hi there, I get a list of data set by means a script with many echo command that looks like this: CASE 1 A= 4 B= 4 CASE 2 A= 3 B= 5 Is... (3 Replies)
Discussion started by: Giordano Bruno
3 Replies

3. UNIX for Advanced & Expert Users

Data from table to column

Hi All, in bash I have a text file which is something like 7.96634E-07 1.0000 0.00000E+00 0.0000 0.00000E+00 0.0000 1.59327E-06 0.7071 2.23058E-05 0.1890 6.61207E-05 0.1098 1.13919E-04 0.0865 1.47377E-04 0.0747 .... .... 0.00000E+00 0.0000 0.00000E+00 0.0000 ... (6 Replies)
Discussion started by: f_o_555
6 Replies

4. UNIX for Dummies Questions & Answers

Append data 1 table to other

Hi. I have 2 create 2 temporary tables.the data will be same with same cols..but after creating 2 tables..i have to merge data in file and send..however the query is after merging data no duplicates shud be present..and only 1 record for a entity must be present.. for eg: table1 has foll cols... (3 Replies)
Discussion started by: musu
3 Replies

5. Shell Programming and Scripting

How to take data from table?

Hi all , am using unix aix .. Actually i have a table called table 1 in that table year period startdate enddate 2013 1 26/03/2012 29/04/2012 2013 2 30/04/2012 27/05/2012 2013 3 28/05/2012 28/06/2012 2013 4 25/06/2012 ... (10 Replies)
Discussion started by: Venkatesh1
10 Replies

6. Shell Programming and Scripting

Take Data From a table and send it through mail

Hi can anyone help me in writing a code for taking data from a table and need to send that data through mail using mail -x command.. (3 Replies)
Discussion started by: ginrkf
3 Replies

7. Shell Programming and Scripting

Arrange data in table

Hello All, I have following data into my file named record. Name City phone number email Jhon Newyork 123456987 jhon@gmail.com Maria Texas 569865612 Maria_Sweet@rediffmail.com Chan Durben NA Chan123@gmail.com |---------------------------------------------------------------| |Name ... (2 Replies)
Discussion started by: Nakul_sh
2 Replies

8. Shell Programming and Scripting

Arrange data in table

Hello All, I have following data into my file named record. Name City phone number email Jhon Newyork 123456987 jhon@gmail.com Maria Texas 569865612 Maria_Sweet@rediffmail.com Chan Durben NA Chan123@gmail.com The output should be in straight columns.. There should not be any... (1 Reply)
Discussion started by: Nakul_sh
1 Replies

9. Shell Programming and Scripting

Getting data in table form

Hi, I have a csv file from which i am fetching few columns as below: IFILE=/home/home1/Report1.csv OFILE=/home/home1/`date +"%m%d%y%H%M%S"`.dat if #Checks if file exists and readable then awk -F "," '(NR>4) {print $1,$6,$2,$3,$4,$5,$6}' ${IFILE} >> ${OFILE} fi cat $OFILE | mail... (7 Replies)
Discussion started by: Vivekit82
7 Replies

10. Shell Programming and Scripting

Tabulate nodes and subnodes of XML file script

Hello to all, I'd like to tabulate the content of the XML file below, I've been trying with AWK putting the Top node (<KIND>) as RS and so far I'm able to print the first and second field of each record, but I don't know how to continue with the following nodes that have more inner nodes. The... (4 Replies)
Discussion started by: Ophiuchus
4 Replies
All times are GMT -4. The time now is 09:28 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy