I have a pipe delimited file and I'm trying to write a script that will give the character/byte positions of each pipe in the file. There may be some simple way but I don't know what it is... Can someone help with this?
Ex: file has output below
I want the script to tell the char positions of the pipes:
Moderator's Comments:
Please use CODE tags when displaying sample input, sample output, and code segments (as required by forum rules.
If this is not homework, please explain why you need to do this.
What operating system and shell are you using?
And, please show us what you have tried to solve this on your own (in CODE tags).
Are you looking for byte counts, character counts, or both. Depending on what tools you're using, bytes counts will be easier or harder than character counts. What tools do you intend to use?
In my server migration requirement, I need to compare if one file on old server is exactly the same as the corresponding file on the new server.
For diff and comm, the inputs need to be sorted. But I do not want to disturb the content of the file and need to find byte-to-byte match.
Please... (4 Replies)
Hi All
Can anyone please suggest me how to remove the last byte from a falt file .This is from the last line's last BYTE.
Please suggest me something.
Thank's and regards
Vinay (1 Reply)
Hi
i am having text file like this
40000201040005200213072009000000700000050744820906904421
40069300240005200713072009000000067400098543630000920442
i want to replace 9-16 positions of my txt file...by 1234567...in a single line command
i.e
0400052....should be replaced by... (2 Replies)
Hello ,
I need to extract data from specific byte positions of a file.
I have tried the below command
awk ' { printf "%s", substr($0, 642363,642369}' filename
to extract data between byte positions
642363 and 642369 .
However I did not get the expected result.
I am new to awk... (6 Replies)
I am attempting to replace positions 44-46 with YYY if positions 48-50 = XXX.
awk -F "" '{if (substr($0,48,3)=="XXX") $44="YYY"}1' OFS="" $filename > $tempfile
But this is not working, 44-46 is still spaces in my tempfile instead of YYY. Any suggestions would be greatly appreciated. (9 Replies)
I have a huge file with lot of rows... with each row around 400 characters.. with spaces as well..
(e.g)
Line1:
"AC254600606 USDMI000001Anom01130073981 0000000000000.002005040720991231 ... (13 Replies)
Hi
I am new to Unix Shell scripting have a requirement where I have to replace the "unix 1 byte delimiter" with the "pipe" separator and also remove any carriage returns and line feeds if any
The Source File
4 QFH Jungle Hill 32-34 City Road London SE23 3UX
the output should be ... (3 Replies)
I have a fixed-length positional file. I am trying to replace content of position 4-13 (length=10) with xxxxxxxxxx.
Sample 2 rows in this file:
H0187459823 172SMITH, JOE
H0112345678 172DOE, JANE
In this example 87459823 (from 1st line) and 12345678 (from 2nd line) (both in position... (3 Replies)
Discussion started by: Diver181
3 Replies
LEARN ABOUT OSF1
telecode
telecode(5) File Formats Manual telecode(5)NAME
telecode - A character encoding system (codeset) for Traditional Chinese
DESCRIPTION
The Telecode codeset (called Mitac Telex in early versions of the operating system) consists of 2 character planes. Each character plane
has 8836 character positions. In plane 1, standard characters occupy positions 0001 to 8045; the remaining 791 positions are for user-
defined characters. In plane 2, standard characters occupy positions 0001 to 8489; the remaining 346 positions are for user-defined charac-
ters. Telecode uses 2-byte values to represent characters on both planes.
Plane 1 Character Encoding
To differentiate plane 1 code from plane 2 code, the most significant bit (MSB) is set on in both bytes of a plane 1 character code. The
following formula calculates the value of a plane 1 character from its position on the plane:
1st byte = M + 161
2nd byte = N + 161 - M x 94
In this formula, N is the position of the character and M = N / 94.
For example, if a character is at position 2502 on plane 1, its encoding value is BBDB, which is calculated as follows:
N = 2502, M = 2502/94 = 26 1st byte = 26 + 161 = 187 2nd byte = 2502 + 161 - 26 x 94 = 219
Plane 2 Character Encoding
To differentiate plane 2 code from plane 1 code, the MSB of the first byte is set on and that of the second byte is set off for each plane
2 character code. The following formula calculates the value of a plane 2 character from its position:
1st byte = M + 161
2nd byte = N + 33 - M x 94
In this formula, N is the position of the character on the plane and M = N / 94.
For example, if a character is at position 2502 on plane 2, its encoding value is BB5B, which is calculated as follows:
N = 2502, M = 2502/94 = 26 1st byte = 26 + 161 = 187 2nd byte = 2502 + 33 - 26 x 94 = 91
Codeset Conversion
The following codeset converter pairs are available for converting Traditional Chinese characters between telecode and other encoding for-
mats. Refer to iconv_intro(5) for an introduction to codeset conversion. For more information about the other codeset for which telecode
is the input or output, see the reference page specified in the list item. big5_telecode, telecode_big5
Converting from and to the Big-5 codeset: big5(5).
Note that Big-5 encoding is equivalent to the Microsoft code-page format used on PCs for Traditional Chinese. You can therefore use
these converters to convert Traditional Chinese characters between PC code page format and Telecode encoding format. For more infor-
mation on how the operating system supports PC code pages, see code_page(5). dechanyu_telecode, telecode_dechanyu
Converting from and to the DEC Hanyu codeset: dechanyu(5). eucTW_telecode, telecode_eucTW
Converting from and to Taiwanese Extended UNIX Code: eucTW(5).
Font Support for Telecode
The operating system supports Telecode only through conversion to another codeset.
SEE ALSO
Commands: locale(1)
Others: ascii(5), big5(5), Chinese(5), code_page(5), dechanyu(5), dechanzi(5), eucTW(5), GBK(5), i18n_intro(5), i18n_printing(5),
iconv_intro(5), l10n_intro(5), sbig5(5)telecode(5)