11-28-2009
Is emp always present or it may be missing too?
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I found the following awk script to transpose multiple (3) columns to multiple rows:
#===
BEGIN {FS=","}
{
for (i=1;i<=NF;i++)
{
arr=$i;
if(nf<= NF)
nf=NF;
}
nr=NR
}
END {
for(i=1;i<=nf;i++)
{ (8 Replies)
Discussion started by: Gery
8 Replies
2. Shell Programming and Scripting
Hi,
I did read a few posts on the subjects, tried out a few solutions, but did not solve my problem.
https://www.unix.com/302121568-post11.html
https://www.unix.com/shell-programming-scripting/137953-large-file-columns-into-rows-etc-4.html
Please help. Problem very similar to the second link... (15 Replies)
Discussion started by: genehunter
15 Replies
3. Shell Programming and Scripting
I'm aware there are a lot of resources dedicated to the question of transposing rows and columns, but I'm a total newbie at this and the task appears to be beyond me.
I have 40 text files with content that looks like this:
Dokument 1 von 146
Orange County Register (California)
June 26, 2010... (2 Replies)
Discussion started by: spindoctor
2 Replies
4. Shell Programming and Scripting
I have a data
A 1
B 2
C 3
D 4
E 5
i would like to change the data
A B C D E
1 2 3 4 5
Pls suggest how we can do it in UNIX.
Start using code tags, thanks. Also start reading your PM's you get from Mods as well read the Forum Rules. That might not do any harm. (24 Replies)
Discussion started by: aravindj80
24 Replies
5. Shell Programming and Scripting
Any tips on how I can awk the input data to display the desired output per below? Thanking you in advance.
input test data:
2
2010-02-16 10:00:00
111111111111 bytes
99999999999 bytes
90%
4
2010-02-16 12:00:00
333333333333 bytes
77777777777 bytes
88%
5
2010-02-16 11:00:00... (4 Replies)
Discussion started by: ux4me
4 Replies
6. Shell Programming and Scripting
Hello. very new to shell scripting and would like to know if anyone could help me.
I have data thats being pulled into a txt file and currently have to manually transpose the data which is taking a long time to do.
here is what the data looks like.
Server1 -- Date -- Other -- value... (7 Replies)
Discussion started by: Mikes88
7 Replies
7. Shell Programming and Scripting
Hi Friends,
Hope all is well.
I have an input file like this
a gene1 10
b gene1 2
c gene2 20
c gene3 10
d gene4 5
e gene5 6
Steps to reach output.
1. Print unique values of column1 as column of the matrix, which will be
a
b
c (5 Replies)
Discussion started by: jacobs.smith
5 Replies
8. Shell Programming and Scripting
input:
a1
a2
a3
a4
a5
a6
a7
b1
b2
b3
..
b7
..
z1
..
z7 (12 Replies)
Discussion started by: ux4me
12 Replies
9. Shell Programming and Scripting
Input:
IN,A,1
IN,B,3
IN,B,2
IN,C,7
BR,A,1
BR,A,5
BR,C,9
AR,C,9
Output:
CNTRY,A,B,C
IN,1,5,7
BR,6,0,9
AR,0,0,9 (7 Replies)
Discussion started by: unme
7 Replies
10. UNIX for Beginners Questions & Answers
Hello,
I have the following data and I want to use awk to transpose each value to a certain column , so in case the value is not available the column should be empty.
Example:
Box Name: BoxA
Weight: 1
Length :2
Depth :3
Color: red
Box Name: BoxB
Weight: 3
Length :4
Color: Yellow... (5 Replies)
Discussion started by: rahman.ahmed
5 Replies
insq(9F) Kernel Functions for Drivers insq(9F)
NAME
insq - insert a message into a queue
SYNOPSIS
#include <sys/stream.h>
int insq(queue_t *q, mblk_t *emp, mblk_t *nmp);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
q Pointer to the queue containing message emp.
emp Enqueued message before which the new message is to be inserted. mblk_t is an instance of the msgb(9S) structure.
nmp Message to be inserted.
DESCRIPTION
insq() inserts a message into a queue. The message to be inserted, nmp, is placed in q immediately before the message emp. If emp is NULL,
the new message is placed at the end of the queue. The queue class of the new message is ignored. All flow control parameters are updated.
The service procedure is enabled unless QNOENB is set.
RETURN VALUES
insq() returns 1 on success, and 0 on failure.
CONTEXT
insq() can be called from user or interrupt context.
EXAMPLES
This routine illustrates the steps a transport provider may take to place expedited data ahead of normal data on a queue (assume all M_DATA
messages are converted into M_PROTO T_DATA_REQ messages). Normal T_DATA_REQ messages are just placed on the end of the queue (line 16).
However, expedited T_EXDATA_REQ messages are inserted before any normal messages already on the queue (line 25). If there are no normal
messages on the queue, bp will be NULL and we fall out of the for loop (line 21). insq acts like putq(9F) in this case.
1 #include
2 #include
3
4 static int
5 xxxwput(queue_t *q, mblk_t *mp)
6 {
7 union T_primitives *tp;
8 mblk_t *bp;
9 union T_primitives *ntp;
10
11 switch (mp->b_datap->db_type) {
12 case M_PROTO:
13 tp = (union T_primitives *)mp->b_rptr;
14 switch (tp->type) {
15 case T_DATA_REQ:
16 putq(q, mp);
17 break;
18
19 case T_EXDATA_REQ:
20 /* Insert code here to protect queue and message block */
21 for (bp = q->q_first; bp; bp = bp->b_next) {
22 if (bp->b_datap->db_type == M_PROTO) {
23 ntp = (union T_primitives *)bp->b_rptr;
24 if (ntp->type != T_EXDATA_REQ)
25 break;
26 }
27 }
28 (void)insq(q, bp, mp);
29 /* End of region that must be protected */
30 break;
. . .
31 }
32 }
33 }
When using insq(), you must ensure that the queue and the message block is not modified by another thread at the same time. You can achieve
this either by using STREAMS functions or by implementing your own locking.
SEE ALSO
putq(9F), rmvq(9F), msgb(9S)
Writing Device Drivers
STREAMS Programming Guide
WARNINGS
If emp is non-NULL, it must point to a message on q or a system panic could result.
SunOS 5.10 9 Jul 2001 insq(9F)