11-21-2006
try with awk. Use the substr($0,Starting_Position,Length) function to cut specific byte from the file.
e.g.
111333xx444TTTLKOPxxxxxxxxx
awk '
{
filler1=substr($0,0,3)
fild1=substr($0,4,2)
filler2=substr($0,6,8)
fild2=substr($0,15,2)
filler3=substr($0,17,11)
printf("%s%s%s%s%s",filler1,fild1,filler2,fild2,filler3)
}' file1 > out_file
Note: Adjuct the filed position as per your correct file layout.
--Manish Jha
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
1. Is there a way to count the number of bytes of a variable?
example:
abc@yahoo.com is 13 bytes
2. Cut command only allows one byte for delimiter
example: cut -f1 -d'.'
delimited by period. Is there a way to have two or more characters in the delimiter field?
thanks in adavance.
:) (4 Replies)
Discussion started by: hemangjani
4 Replies
2. Shell Programming and Scripting
Hi All,
I wish to cut an input by using the below command but i would want to have the cut position as a variable.
For eg, the position number is 11 now and i wish that this number is being assigned to a variable before putting into the cut function.
Can this be done ?
Can any expert help?... (1 Reply)
Discussion started by: Raynon
1 Replies
3. Shell Programming and Scripting
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)
Discussion started by: krishmaths
4 Replies
4. Shell Programming and Scripting
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)
Discussion started by: vinayrao
1 Replies
5. Shell Programming and Scripting
Hi all,
I am new to perl programming. However i have a script that connects to the database and spools that into an output file.
Strange thing is that sometimes this script works and sometimes the ouput spool file is always 0 byte.
I have verified the sql query and the query always returns... (5 Replies)
Discussion started by: amit1_x
5 Replies
6. Shell Programming and Scripting
How to extract multiple data based on character position. I need to fetch from 7-9 and 22-26 and there is no delimiter for 22-26 since it is part of the column. The file may have more than 1000 character long.I managed to pull any one but not both
for example
test data
12345 zxc vbnmlk... (1 Reply)
Discussion started by: zooby
1 Replies
7. Shell Programming and Scripting
Hi Gurus,
I want to cut my file from 27th charactor to the end of line.
can anybody give some unix command to do this.
Thanks in advance (3 Replies)
Discussion started by: ken6503
3 Replies
8. UNIX for Beginners Questions & Answers
Hi All,
I am having a huge file file. I need to cut the below column and do the below calculation
I did the below command and able to do on full databased no on the individual based any help on doing each row by row
cut -c 52-56 myfile | awk '{total = total + $1}END{print total}'... (7 Replies)
Discussion started by: arunkumar_mca
7 Replies
9. UNIX for Beginners Questions & Answers
Hello,
I am on AIX.
When I encounter extended ascii characters and special characters on a file I need to print..
Byte position, actual character and line number.
Is there a simple command that can give me the above result ?
Thanks in advance (38 Replies)
Discussion started by: rosebud123
38 Replies
10. Shell Programming and Scripting
Hi All,
We have a requirement of picking nth position value by using cut command. value would be delimited by any symbols. We have to pass delimited value and postition to get the value in a string.
ex.
echo "A,B,C,D,E" |cut -d "," -f3
echo "A|B|C|D|E"|cut -d "|" -f2
Kindly frame the... (5 Replies)
Discussion started by: KK230689
5 Replies
bytes(3perl) Perl Programmers Reference Guide bytes(3perl)
NAME
bytes - Perl pragma to force byte semantics rather than character semantics
NOTICE
This pragma reflects early attempts to incorporate Unicode into perl and has since been superseded. It breaks encapsulation (i.e. it
exposes the innards of how the perl executable currently happens to store a string), and use of this module for anything other than
debugging purposes is strongly discouraged. If you feel that the functions here within might be useful for your application, this possibly
indicates a mismatch between your mental model of Perl Unicode and the current reality. In that case, you may wish to read some of the perl
Unicode documentation: perluniintro, perlunitut, perlunifaq and perlunicode.
SYNOPSIS
use bytes;
... chr(...); # or bytes::chr
... index(...); # or bytes::index
... length(...); # or bytes::length
... ord(...); # or bytes::ord
... rindex(...); # or bytes::rindex
... substr(...); # or bytes::substr
no bytes;
DESCRIPTION
The "use bytes" pragma disables character semantics for the rest of the lexical scope in which it appears. "no bytes" can be used to
reverse the effect of "use bytes" within the current lexical scope.
Perl normally assumes character semantics in the presence of character data (i.e. data that has come from a source that has been marked as
being of a particular character encoding). When "use bytes" is in effect, the encoding is temporarily ignored, and each string is treated
as a series of bytes.
As an example, when Perl sees "$x = chr(400)", it encodes the character in UTF-8 and stores it in $x. Then it is marked as character data,
so, for instance, "length $x" returns 1. However, in the scope of the "bytes" pragma, $x is treated as a series of bytes - the bytes that
make up the UTF8 encoding - and "length $x" returns 2:
$x = chr(400);
print "Length is ", length $x, "
"; # "Length is 1"
printf "Contents are %vd
", $x; # "Contents are 400"
{
use bytes; # or "require bytes; bytes::length()"
print "Length is ", length $x, "
"; # "Length is 2"
printf "Contents are %vd
", $x; # "Contents are 198.144"
}
chr(), ord(), substr(), index() and rindex() behave similarly.
For more on the implications and differences between character semantics and byte semantics, see perluniintro and perlunicode.
LIMITATIONS
bytes::substr() does not work as an lvalue().
SEE ALSO
perluniintro, perlunicode, utf8
perl v5.14.2 2010-12-30 bytes(3perl)