11-19-2009
Merge group numbers and add a column containing group names
I have a file in the following format. Groups of data merge together and the group number is indicated above each group.
1
adrf
dfgr
dfg
2
dfgr
dfgr
3
dfef
dfr
fd
4
fgrt
fgr
fgg
5
fgrt
fgr
fgr
.
.
.
.
50
dfgr
dfd
fdd
fdf
dfdg
I wanted to add another column (separated by tab) such that the file looks like:
adrf 1
dfgr 1
dfg 1
dfgr 2
dfgr 2
dfef 3
dfr 3
fd 3
fgrt 4
fgr 4
fgg 4
fgrt 5
fgr 5
fgr 5
.
.
.
.
50
dfgr 50
dfd 50
fdd 50
fdf 50
dfdg 50
Basically add a column that contains the number of each group and delete the group heading and merge.
Is there an efficient way using shell scripting to do it. I have 1000's of such small groups to manipulate.
Please let me know.
9 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
hi,
which Unix/C function can i use to retrieve all group names with a particular group id?
The following C code prints out the group id number of a particular group name:
------------------------------------------------------------------------
#include <stdio.h>
#include <grp.h>
int... (3 Replies)
Discussion started by: Andrewkl
3 Replies
2. Shell Programming and Scripting
Hi All
I do have a file like this with 6 columns. Groups of data merge together and the group number is indicated above each group.
1
1 12 26 289 3.2e-027 GCGTATGGCGGC
2 12 26 215 6.7e+006 TTCCACCTTTTG
3 9 26 175 ... (1 Reply)
Discussion started by: Lucky Ali
1 Replies
3. Shell Programming and Scripting
I've this file and need to sort the data in each group
File would look like this ...
cat file1.txt
Reason : ABC
12345-0023
32123-5400
32442-5333
Reason : DEF
42523-3453
23345-3311
Reason : HIJ
454553-0001
I would like to sort each group on the last 4 fileds and print them... (11 Replies)
Discussion started by: prash184u
11 Replies
4. UNIX for Advanced & Expert Users
Hi Everybody,
Below are the contents of the a text file ..,
SN = 8
MSI = 405027002277133
IKVALUE = DE6AA6A11D42B69DF6398D44B17BC6F2
K4SNO = 2
CARDTYPE = SIM
ALG = COMP128_3
SN = 8
MSI = 405027002546734
IKVALUE = 1D9F8BAA73973D8FBF8CBFB01436D822
K4SNO = 2
CARDTYPE = SIM
ALG =... (8 Replies)
Discussion started by: prasanth_babu
8 Replies
5. UNIX for Advanced & Expert Users
Hello,
When listing the file systems (using ls -ltr) , if the group names are longer the group name is getting truncated.
Can someone help with the script which would display the truncated group name?
I appreciate if someone could help in this regard. (1 Reply)
Discussion started by: mike12
1 Replies
6. Shell Programming and Scripting
/etc/group
tiadm::345:mk789,po312,jo343,ju454,ko453,yx879,iy345,hn453
bin::2:root,daemon
sys::3:root,bin,adm
adm::4:root,daemon
uucp::5:root
/etc/passwd
mk789:x:234:1::/export/home/dummy:/bin/sh
po312:x:234:1::/export/home/dummy:/bin/sh
ju454:x:234:1::/export/home/dummy:/bin/sh... (6 Replies)
Discussion started by: chidori
6 Replies
7. Shell Programming and Scripting
Hi All,
I have a pipe seperated file. I need to add the values in second and third columns with group by on first column.
MYFILE_28012012_1115|47|173.90
MYFILE_28012012_1115|4|0.00
MYFILE_28012012_1115|6|22.20
MYFILE_28012012_1116|47|173.90
MYFILE_28012012_1116|4|0.00... (3 Replies)
Discussion started by: angshuman
3 Replies
8. Programming
I'm trying to return only one row with the highest value for PCT_MAX_USED. Any suggestions?
When I add this code, I get the ORA-00937 error.
trunc(max(decode( kbytes_max, 0, 0, (kbytes_alloc/kbytes_max)*100))) pct_max_used
This is the original and returns all rows.
select (select... (3 Replies)
Discussion started by: progkcp
3 Replies
9. Shell Programming and Scripting
As part of some report generation, I've written a script to fetch the values from DB. But, unluckily, for certain Time ranges(1-9.99,10-19.99 etc), I don't have data in DB.
In such cases, I would like to write zero (0) instead of empty. The desired output will be exported to csv file.
... (1 Reply)
Discussion started by: kumar_karpuram
1 Replies
LEARN ABOUT OSF1
xmprocesstraversal
XmProcessTraversal(3X) XmProcessTraversal(3X)
NAME
XmProcessTraversal - A function that determines which component receives keyboard events when a widget has the focus
SYNOPSIS
#include <Xm/Xm.h>
Boolean XmProcessTraversal (widget, direction)
Widget widget;
XmTraversalDirection direction;
DESCRIPTION
XmProcessTraversal determines which component of a hierarchy receives keyboard events when the hierarchy that contains the given widget has
keyboard focus. Using XmProcessTraversal to traverse to MenuBars, Pulldown MenuPanes, or Popup MenuPanes is not supported. Specifies the
widget ID of the widget whose hierarchy is to be traversed. The hierarchy is only traversed up to the top of the shell. If that shell does
not currently have the focus, any changes to the element with focus within that shell will not occur until the next time the shell receives
focus. Specifies the direction of traversal
The direction parameter can have the following values, which cause the routine to take the corresponding actions: XmTRAVERSE_CURRENT--Finds
the hierarchy and the tab group that contain widget. If this tab group is not the active tab group, makes it the active tab group. If wid-
get is an item in the active tab group, makes it the active item. If widget is the active tab group, makes the first traversable item in
the tab group the active item. XmTRAVERSE_DOWN--Finds the hierarchy that contains widget. Finds the active item in the active tab group
and makes the item below it the active item. If there is no item below, wraps. XmTRAVERSE_HOME--Finds the hierarchy that contains widget.
Finds the active item in the active tab group and makes the first traversable item in the tab group the active item. XmTRA-
VERSE_LEFT--Finds the hierarchy that contains widget. Finds the active item in the active tab group and makes the item to the left the
active item. If there is no item to the left, wraps. XmTRAVERSE_NEXT--Finds the hierarchy that contains widget. Finds the active item in
the active tab group and makes the next item in child order the active item. XmTRAVERSE_NEXT_TAB_GROUP--Finds the hierarchy that contains
widget. Finds the active tab group (if any) and makes the next tab group the active tab group in the hierarchy. XmTRAVERSE_PREV--Finds the
hierarchy that contains widget. Finds the active item in the active tab group and makes the previous item in child order the active item.
XmTRAVERSE_PREV_TAB_GROUP--Finds the hierarchy that contains widget. Finds the active tab group (if any) and makes the previous tab group
the active tab group in the hierarchy. XmTRAVERSE_RIGHT--Finds the hierarchy that contains widget. Finds the active item in the active tab
group and makes the item to the right the active item. If there is no item to the right, wraps. XmTRAVERSE_UP--Finds the hierarchy that
contains widget. Finds the active item in the active tab group and makes the item above it the active item. If there is no item above,
wraps.
CAUTIONS
XmProcessTraversal will not allow traversal to a widget in a different shell. XmProcessTraversal will only allow traversal to widgets that
are currently mapped. You cannot call XmProcessTraversal from inside a focusCallback routine (or you will get a segmentation fault).
RETURN VALUE
Returns True if the setting succeeded. Returns False if the keyboard focus policy is not XmEXPLICIT, if there are no traversable items, or
if the call to the routine has invalid parameters.
SEE ALSO
XmGetVisibility(3X), XmIsTraversable(3X)
XmProcessTraversal(3X)