How can I use sed to replace a ctrl character such as 'new line' (\0a) to something else? Or any other good command can do this job?
Thanks,
Hillxy (5 Replies)
Hi all,
Suppose I have a file with the contents below, and I only want to print words %S_ then | sort -u.
------------------------------
The %S_MSG that starts with '%.*s' is too long. Maximum length is %d.
The %S_MSG name '%.*s' contains more than the maximum number of prefixes. The... (5 Replies)
Hi everyone
I have file1 contains:
'7832'
' 8765
6543
I want a sed command that will format as:
'7832' , '8765' , '6543'
I tried
sed -e s/\'//g -e 's/^*//;s/*$//' file1 > file2
sed -e :a -e '$!N; s/\n/ /; ta' file2
which gives: 7832 8765 6543
I need some help to continue with... (5 Replies)
Hi,
I require to replace 2 items:
1. replace start of all lines in a file with ' except the first line
2. replace end of all lines in a file with '||chr( except last line
I am able to do the entire file using
sed -e s/^/\'/g -e s/$/\'\|\|chr\(/g "$file" > newfile.txt
but am not yet able... (0 Replies)
Hi,
I require to replace 2 items:
1. replace start of all lines in a file with ' except the first line
2. replace end of all lines in a file with '||chr( except last line
I am able to do the entire file using
sed -e s/^/\'/g -e s/$/\'\|\|chr\(/g "$file" > newfile.txt
but am not yet... (3 Replies)
Hi,
I'm trying to replace a range of characters by their position in each line by spaces.
I need to replace characters 95 to 145 by spaces in each line.
i tried below but it doesn't work
sed -r "s/^(.{94})(.{51})/\ /" inputfile.txt > outputfile.txt
can someone please help me... (3 Replies)
I have several files in a directory that look like this:
jacket-n r
potential-n -
outcome-n f
reputation-n b
I want to replace the characters in the second column with certain numbers. For instance, I want the letters 'f', 'r' and 'b' in the second column to replaced with 0 and I want the... (1 Reply)
Hi,
I hope you can help me out please?
I need to replace from character 8-16 with AAAAAAAA and the rest should stay the same after character 16
gtwrhtrd11111111rjytwyejtyjejetjyetgeaEHT
wrehrhw22222222hytekutkyukrylryilruilrGEQTH
hrwjyety33333333gtrhwrjrgkreglqeriugn;RUGNEURGU
... (4 Replies)
Hello,
I have some data that looks like the following,
> <SALTDATA> (OVS0199262)
HCl
> <IDNUMBER> (OVS0199262)
OVS0199262
> <SUPPLIER> (OVS0199262)
TimTec
> <EMAIL> (OVS0199262)
info@timtec.net
> <WEBSITE> (OVS0199262)
http://www.timtec.net
I need to remove the data in... (3 Replies)
Hi,
Im using sed on an AIX machine. I am trying to change the 137-139 characters if they are a ' 36'/'000' to a '036'. The positions that need to be changed are fixed.
the source data that I have is$cat v.txt
4000422985400050462239065593606500000007422985707771046154054910075641MC0318AMWAY... (9 Replies)
Discussion started by: dsid
9 Replies
LEARN ABOUT SUNOS
pullupmsg
pullupmsg(9F) Kernel Functions for Drivers pullupmsg(9F)NAME
pullupmsg - concatenate bytes in a message
SYNOPSIS
#include <sys/stream.h>
int pullupmsg(mblk_t *mp, ssize_t len);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
mp Pointer to the message whose blocks are to be concatenated. mblk_t is an instance of the msgb(9S) structure.
len Number of bytes to concatenate.
DESCRIPTION
pullupmsg() tries to combine multiple data blocks into a single block. pullupmsg() concatenates and aligns the first len data bytes of the
message pointed to by mp. If len equals -1, all data are concatenated. If len bytes of the same message type cannot be found,
pullupmsg() fails and returns 0.
RETURN VALUES
On success, 1 is returned; on failure, 0 is returned.
CONTEXT
pullupmsg() can be called from user or interrupt context.
EXAMPLES
Example 1: Using pullupmsg()
This is a driver write srv(9E) (service) routine for a device that does not support scatter/gather DMA. For all M_DATA messages, the data
will be transferred to the device with DMA. First, try to pull up the message into one message block with the pullupmsg() function (line
12). If successful, the transfer can be accomplished in one DMA job.
Otherwise, it must be done one message block at a time (lines 19-22). After the data has been transferred to the device, free the message
and continue processing messages on the queue.
1 xxxwsrv(q)
2 queue_t *q;
3 {
4 mblk_t *mp;
5 mblk_t *tmp;
6 caddr_t dma_addr;
7 ssize_t dma_len;
8
9 while ((mp = getq(q)) != NULL) {
10 switch (mp->b_datap->db_type) {
11 case M_DATA:
12 if (pullupmsg(mp, -1)) {
13 dma_addr = vtop(mp->b_rptr);
14 dma_len = mp->b_wptr - mp->b_rptr;
15 xxx_do_dma(dma_addr, dma_len);
16 freemsg(mp);
17 break;
18 }
19 for (tmp = mp; tmp; tmp = tmp->b_cont) {
20 dma_addr = vtop(tmp->b_rptr);
21 dma_len = tmp->b_wptr - tmp->b_rptr;
22 xxx_do_dma(dma_addr, dma_len);
23 }
24 freemsg(mp);
25 break;
. . .
26 }
27 }
28 }
SEE ALSO srv(9E), allocb(9F), msgpullup(9F), msgb(9S)
Writing Device Drivers
STREAMS Programming Guide
NOTES
pullupmsg() is not included in the DKI and will be removed from the system in a future release. Device driver writers are strongly encour-
aged to use msgpullup(9F) instead of pullupmsg().
SunOS 5.10 11 Nov 1996 pullupmsg(9F)