Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Help with Data Sorting Command Post 302358002 by sanjay.login on Thursday 1st of October 2009 05:52:52 AM
Old 10-01-2009
Hi 793589,


Hope this code will work for you.

Code:
awk '{x=$1" "$2; for (i=3;i<=NF;i++){ if ($i~"^aaa"||$i~"^bbb"||$i~"^ccc"){$i=substr($i,1,3);x=x" "$i}}; print x;x="" }' infile |awk 'NF>2{print $0}'



input :

Code:
0123123:56:Y01:S32 123/00/00/000T ddasr_#3T aaa#6 bbb ccc ddd (adf) 88
6897112:46:R51:B00 112/32/03/003M ca_a#6 aaa# ddpsr_2A_RA#3T ddasr_#3T bbb# ccc (ade) ce_b#6 27
5548102:66:Y03:B02 1a3/7g9/65/7YY (adf)03 ddmsrsb2sgy_2g#188T ddMgfdus1889rsb2sgy_ART_2g#36T
1645810:97:Y87:B55 12b/129/00/110 prefsdb_sgdbf_bdfb_aaa zzgthmk5af_6#6 aaa zmzgjklphmk5af#6 ddp35sad2Cr_2C_RA#35T bbb ccc# ddd fff(a8f)03 63
5348117:02:R89:B31 42f/8c9/28/7YU prefsdb_sgdbf_bdfb_aaa aaa#6 bbb ccc ddd (adf) 99
1479992:93:R22:B85 120/tyu/36/DFU prefsdb_sgdbf_bdfb_aaa zzgthmk5af_6#6 fff 26
6745512:76:Y65:S99 023/w03/10/11P ddmsrsb2sgy_2g#188T bbb ccc ddd# (adf)03 lll kkk#
0234152:85:R00:S55 d68/b56/65/11U {eng} aaa ddd (a)05 ddmsrsb2sgy_2g#88
7689710:65:R01:B45 129/po9/85/027 aaa bbb ccc ddd (adf)
1001289:10:R01:B76 822/78y/64/008 prefsdb_sgdbf_bdfb_aaa zzgthmk5af_6#6 fff 26
3356745:23:Y66:B96 g67/239/65/11M aaa bbb#7 ccc ddd (adf) eng jkl ggg prefsdb_sgdbf_bdfb_aaa zzgthmk5af_6#6 fff 26
1889429:15:Y02:S88 822/78y/00/04M (adf)03

output:

Code:
0123123:56:Y01:S32 123/00/00/000T aaa bbb ccc
6897112:46:R51:B00 112/32/03/003M aaa bbb ccc
1645810:97:Y87:B55 12b/129/00/110 aaa bbb ccc
5348117:02:R89:B31 42f/8c9/28/7YU aaa bbb ccc
6745512:76:Y65:S99 023/w03/10/11P bbb ccc
0234152:85:R00:S55 d68/b56/65/11U aaa
7689710:65:R01:B45 129/po9/85/027 aaa bbb ccc
3356745:23:Y66:B96 g67/239/65/11M aaa bbb ccc


and for your second question for first "/" replace wth null and third "/" replaced with a "."

you can go for the command
Code:
sed 's/\//./3g
s/\///g' file_name

so for single command you can go for :

Code:
awk '{x=$1" "$2; for (i=3;i<=NF;i++){ if ($i~"^aaa"||$i~"^bbb"||$i~"^ccc"){$i=substr($i,1,3);x=x" "$i}}; print x;x="" }' infile |awk 'NF>2 {print $0}'|sed 's/\//./3g
s/\///g'

which will give the desired output:
Code:
0123123:56:Y01:S32 1230000.000T aaa bbb ccc
6897112:46:R51:B00 1123203.003M aaa bbb ccc
1645810:97:Y87:B55 12b12900.110 aaa bbb ccc
5348117:02:R89:B31 42f8c928.7YU aaa bbb ccc
6745512:76:Y65:S99 023w0310.11P bbb ccc
0234152:85:R00:S55 d68b5665.11U aaa
7689710:65:R01:B45 129po985.027 aaa bbb ccc
3356745:23:Y66:B96 g6723965.11M aaa bbb ccc

enjoy Smilie



Regards,
Sanjay

Last edited by sanjay.login; 10-01-2009 at 07:44 AM..
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Sorting blocks of data

Hello all, Below is what I am trying to accomplish: I have a file that looks like this /* ----------------- xxxx.y_abcd_00000050 ----------------- */ jdghjghkla sadgsdags asdgsdgasd asdgsagasdg /* ----------------- xxxx.y_abcd_00000055 ----------------- */ sdgsdg sdgxcvzxcbv... (8 Replies)
Discussion started by: alfredo123
8 Replies

2. UNIX for Dummies Questions & Answers

sorting data from who by IP

Hello. I have an RS/6000 running AIX 4 and I need to be able to see if there are any users that are logged on more than once from the same terminal so I can kick them off to make room for other terminals. 64 connections is the limit. Currently I am doing this: who | more and then manually... (11 Replies)
Discussion started by: raidzero
11 Replies

3. Shell Programming and Scripting

PERL data - sorting

Hello, I have a page where multiple fields and their values are displayed. But I am able to sort only a few fields. When I looked into the issue, it is seen that the for each row of info , an unique id is generated and id.txt is generated and saved. Only those fields which are inside that id.txt... (3 Replies)
Discussion started by: eagercyber
3 Replies

4. UNIX for Dummies Questions & Answers

Sorting data from a to z

Hi, Let's say I have these 3 columns; NGC1234 6 9 SL899 4 1 NGC1075 8 3 SL709 5 2 And I want to sort the data according to the first column (from a to z) like having them as: NGC1075 8 3 NGC1234 6 9 SL709 5 2 SL899 4 1 Can that be done... (2 Replies)
Discussion started by: cosmologist
2 Replies

5. UNIX for Dummies Questions & Answers

Sorting data

Hello guys. I need help figuring this one out. It's probably really easy. Thanks in advance! I have a file say for example containing this: Rice Food Carrots Food Beans Food Plates Kitchen Fork Kitchen Knives Kitchen I need: Food Rice, Carrots, Beans Kitchen Plates, Fork,... (7 Replies)
Discussion started by: visuelz
7 Replies

6. UNIX for Dummies Questions & Answers

Help with Data Sorting

Hi All, I have a long list made of 4 columns containing entries such as the following example: a b c d 0 0 0 0 1 2 1 2 2 5 3 4 3 8 4 6 4 10 9 8 5 15 8 10So the top row is the header and I need to arrange the data in a way as to... (11 Replies)
Discussion started by: pawannoel
11 Replies

7. Shell Programming and Scripting

Sorting the Data

My actual data looks like below i have given only format. i can't give exact data format of my requirement due to some reasons. I this set of data lines about 5000 I need to come up with information in below exact format of my data set : Line<space>Number1<space>"somedata":... (1 Reply)
Discussion started by: ckaramsetty
1 Replies

8. Shell Programming and Scripting

Sorting the data with date

Hi, PFB the data: C_Random_130417 Java_Random_130518 Perl_Random_120519 Perl_Random_120528 so the values are ending with year,i.e.,130417 i want to sort the values with date. i want the output like this: Perl_Random_120519 Perl_Random_120528 C_Random_130417 Java_Random_130518 can... (5 Replies)
Discussion started by: arindam guha
5 Replies

9. Shell Programming and Scripting

How AS 400 sorting data?

Hi Gurus, I have a requests to sort data based on AS 400 sorting order. below is example: the data is sorted by ascending order. could anybody explain how AS 400 sort data? IMM00007 07918607 1242 423 (3 Replies)
Discussion started by: green_k
3 Replies
All times are GMT -4. The time now is 11:11 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy