Sponsored Content
Top Forums UNIX for Dummies Questions & Answers This awk should work, shouldn't it? Post 302956217 by sea on Monday 28th of September 2015 08:37:51 AM
Old 09-28-2015
Regular:
Code:
cat out.tmp 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
 30 81.5M   30 24.8M    0     0  2818k      0  0:00:29  0:00:09  0:00:20 4305k

Hexdump:
Code:
hexdump out.tmp 
0000000 2020 2025 6f54 6174 206c 2020 2520 5220
0000010 6365 6965 6576 2064 2025 6658 7265 2064
0000020 4120 6576 6172 6567 5320 6570 6465 2020
0000030 5420 6d69 2065 2020 5420 6d69 2065 2020
0000040 2020 6954 656d 2020 7543 7272 6e65 0a74
0000050 2020 2020 2020 2020 2020 2020 2020 2020
*
0000070 4420 6f6c 6461 2020 7055 6f6c 6461 2020
0000080 5420 746f 6c61 2020 5320 6570 746e 2020
0000090 2020 654c 7466 2020 7053 6565 0a64 200d
00000a0 3020 2020 2020 3020 2020 2020 2030 2020
00000b0 2020 2030 2020 3020 2020 2020 3020 2020
00000c0 2020 2020 2030 2020 2020 3020 2d20 3a2d
00000d0 2d2d 2d3a 202d 2d2d 2d3a 3a2d 2d2d 2d20
00000e0 3a2d 2d2d 2d3a 202d 2020 2020 0d30 2020
00000f0 2030 2020 2020 2030 2020 3020 2020 2020
0000100 3020 2020 2020 2030 2020 2020 2030 2020
0000110 2020 3020 2020 2020 2020 2030 2d2d 2d3a
0000120 3a2d 2d2d 2d20 3a2d 2d2d 2d3a 202d 2d2d
0000130 2d3a 3a2d 2d2d 2020 2020 3020 200d 3020
0000140 3820 2e31 4d35 2020 2020 2030 3032 3230
0000150 2034 2020 3020 2020 2020 3020 2020 3831
0000160 3732 2039 2020 2020 3020 2020 3a31 3731
0000170 353a 2038 3020 303a 3a30 3130 2020 3a31
0000180 3731 353a 2037 3831 3732 0d30 2020 2030
0000190 3138 352e 204d 2020 3020 2020 3932 6b30
00001a0 2020 2020 2030 2020 2020 2030 2020 3431
00001b0 6b32 2020 2020 2020 2030 3020 303a 3a39
00001c0 3534 2020 3a30 3030 303a 2032 3020 303a
00001d0 3a39 3334 2020 3431 6b32 200d 3120 3820
00001e0 2e31 4d35 2020 2020 2031 3131 3632 206b
00001f0 2020 3020 2020 2020 3020 2020 3320 3037
0000200 206b 2020 2020 3020 2020 3a30 3330 343a
0000210 2035 3020 303a 3a30 3330 2020 3a30 3330
0000220 343a 2032 3320 3037 0d6b 2020 2034 3138
0000230 352e 204d 2020 3420 3420 3130 6b38 2020
0000240 2020 2030 2020 2020 2030 2020 3939 6b32
0000250 2020 2020 2020 2030 3020 303a 3a31 3432
0000260 2020 3a30 3030 303a 2034 3020 303a 3a31
0000270 3032 2020 3939 6b31 200d 3031 3820 2e31
0000280 4d35 2020 3120 2030 3338 3839 206b 2020
0000290 3020 2020 2020 3020 2020 3631 3932 206b
00002a0 2020 2020 3020 2020 3a30 3030 353a 2031
00002b0 3020 303a 3a30 3530 2020 3a30 3030 343a
00002c0 2036 3631 3833 0d6b 3120 2034 3138 352e
00002d0 204d 2020 3431 3120 2e31 4d39 2020 2020
00002e0 2030 2020 2020 2030 3220 3330 6b36 2020
00002f0 2020 2020 2030 3020 303a 3a30 3134 2020
0000300 3a30 3030 303a 2036 3020 303a 3a30 3533
0000310 3220 3834 6b35 200d 3032 3820 2e31 4d35
0000320 2020 3220 2030 3631 352e 204d 2020 3020
0000330 2020 2020 3020 2020 3432 3930 206b 2020
0000340 2020 3020 2020 3a30 3030 333a 2034 3020
0000350 303a 3a30 3730 2020 3a30 3030 323a 2037
0000360 3333 3433 0d6b 3220 2034 3138 352e 204d
0000370 2020 3432 3220 2e30 4d32 2020 2020 2030
0000380 2020 2020 2030 3220 3835 6b33 2020 2020
0000390 2020 2030 3020 303a 3a30 3233 2020 3a30
00003a0 3030 303a 2038 3020 303a 3a30 3432 3320
00003b0 3339 6b31 200d 3033 3820 2e31 4d35 2020
00003c0 3320 2030 3432 382e 204d 2020 3020 2020
00003d0 2020 3020 2020 3832 3831 206b 2020 2020
00003e0 3020 2020 3a30 3030 323a 2039 3020 303a
00003f0 3a30 3930 2020 3a30 3030 323a 2030 3334
0000400 3530 006b                              
0000403

 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

why is this so hard when it shouldn't be?

All I ask is one thing: 1. Where can i dl unix and the driver for my modem? right now i have win xp HP notebook, and bellsouth is my provider with a westell modem. (2 Replies)
Discussion started by: velious
2 Replies

2. Shell Programming and Scripting

why awk does not work here?

I am trying to find any line with the 9th column's number greater than 200, but why the following awk command does not work? awk '$9 > 200' /tmp/test 2007-09-05 10:13:05.714 640.847 any 1.2.3.4 719 2445 487260 32 6082 199 2007-09-05 10:13:02.686 641.827... (2 Replies)
Discussion started by: fedora
2 Replies

3. Shell Programming and Scripting

awk: assign variable with -v didn't work in awk filter

I want to filter 2nd column = 2 using awk $ cat t 1 2 2 4 $ VAR=2 #variable worked in print $ cat t | awk -v ID=$VAR ' { print ID}' 2 2 # but variable didn't work in awk filter $ cat t | awk -v ID=$VAR '$2~/ID/ { print $0}' (2 Replies)
Discussion started by: honglus
2 Replies

4. Shell Programming and Scripting

Parse file using awk and work in awk output

hi guys, i want to parse a file using public function, the file contain raw data in the below format i want to get the output like this to load it to Oracle DB MARWA1,BSS:26,1,3,0,0,0,0,0.00,22,22,22.00 MARWA2,BSS:26,1,3,0,0,0,0,0.00,22,22,22.00 this the file raw format: Number of... (6 Replies)
Discussion started by: dagigg
6 Replies

5. Shell Programming and Scripting

Delimited data contains line feeds where they shouldn't be

I have some data, each record (line) ends with a line feed (\n). Each field is pipe (|) delimited. 1|short desc|long text|2001-01-01 01:01 2|short desc| long text |2002-02-02 02:02 3|short desc| long text | 2003-03-03 03:03 4|short desc | long text | 2004-04-04 04:04 ... (10 Replies)
Discussion started by: ericdp63
10 Replies

6. Solaris

Particular user account shouldn't be locked after entering wrong passwd specfic no. times

Hi all In my system we have implemented user lockout feature after 3 failure attempt if he tries to login directly or if he run the any command through sudo and enter wrong password thrice. Now I have requirement in which particular user account shouldn't be locked when he run the command... (1 Reply)
Discussion started by: sb200
1 Replies

7. Shell Programming and Scripting

Script outputing out numbers when it shouldn't

i suspect the issue is with the IFS part. I have a script that reads a file. the problem here is that, when i run the script, it outputs a bunch of numbers. i know what these numbers are, but i dont understand why they're being sent to the screen. as you can see below, everything should be... (5 Replies)
Discussion started by: SkySmart
5 Replies

8. UNIX for Dummies Questions & Answers

Users of own group shouldn't be able to delete

Oracle Linux 6.5 oracle user's primary group is oinstall and its secondary group is dba,asmdba,asmoper. For the below created directory, I want the users belonging to dba,asmdba,asmoper to be able create, read and execute files but not delete them. How can I achieve that. If I use 775 as... (5 Replies)
Discussion started by: kraljic
5 Replies

9. Shell Programming and Scripting

Why does this if match although it shouldn't?

Hi everyboy, I am a little confused and can't understand why I get a positive match in the following case. Shell Script section echo $SHELL echo "Server type = ${SERV_TYPE}" if ]]; then echo "foor" echo -e $(_date) "${cinfo}INFO: ${crst}Checking SAP memory on ${HOST}"This is the... (1 Reply)
Discussion started by: h1kelds
1 Replies
XXD(1)							      General Commands Manual							    XXD(1)

NAME
xxd - make a hexdump or do the reverse. SYNOPSIS
xxd -h[elp] xxd [options] [infile [outfile]] xxd -r[evert] [options] [infile [outfile]] DESCRIPTION
xxd creates a hex dump of a given file or standard input. It can also convert a hex dump back to its original binary form. Like uuen- code(1) and uudecode(1) it allows the transmission of binary data in a `mail-safe' ASCII representation, but has the advantage of decoding to standard output. Moreover, it can be used to perform binary file patching. OPTIONS
If no infile is given, standard input is read. If infile is specified as a `-' character, then input is taken from standard input. If no outfile is given (or a `-' character is in its place), results are sent to standard output. Note that a "lazy" parser is used which does not check for more than the first option letter, unless the option is followed by a parameter. Spaces between a single option letter and its parameter are optional. Parameters to options can be specified in decimal, hexadecimal or octal notation. Thus -c8, -c 8, -c 010 and -cols 8 are all equivalent. -a | -autoskip toggle autoskip: A single '*' replaces nul-lines. Default off. -b | -bits Switch to bits (binary digits) dump, rather than hexdump. This option writes octets as eight digits "1"s and "0"s instead of a nor- mal hexadecimal dump. Each line is preceded by a line number in hexadecimal and followed by an ascii (or ebcdic) representation. The command line switches -r, -p, -i do not work with this mode. -c cols | -cols cols format <cols> octets per line. Default 16 (-i: 12, -ps: 30, -b: 6). Max 256. -E | -EBCDIC Change the character encoding in the righthand column from ASCII to EBCDIC. This does not change the hexadecimal representation. The option is meaningless in combinations with -r, -p or -i. -g bytes | -groupsize bytes separate the output of every <bytes> bytes (two hex characters or eight bit-digits each) by a whitespace. Specify -g 0 to suppress grouping. <Bytes> defaults to 2 in normal mode and 1 in bits mode. Grouping does not apply to postscript or include style. -h | -help print a summary of available commands and exit. No hex dumping is performed. -i | -include output in C include file style. A complete static array definition is written (named after the input file), unless xxd reads from stdin. -l len | -len len stop after writing <len> octets. -p | -ps | -postscript | -plain output in postscript continuous hexdump style. Also known as plain hexdump style. -r | -revert reverse operation: convert (or patch) hexdump into binary. If not writing to stdout, xxd writes into its output file without trun- cating it. Use the combination -r -p to read plain hexadecimal dumps without line number information and without a particular column layout. Additional Whitespace and line-breaks are allowed anywhere. -seek offset When used after -r: revert with <offset> added to file positions found in hexdump. -s [+][-]seek start at <seek> bytes abs. (or rel.) infile offset. + indicates that the seek is relative to the current stdin file position (mean- ingless when not reading from stdin). - indicates that the seek should be that many characters from the end of the input (or if combined with +: before the current stdin file position). Without -s option, xxd starts at the current file position. -u use upper case hex letters. Default is lower case. -v | -version show version string. CAVEATS
xxd -r has some builtin magic while evaluating line number information. If the output file is seekable, then the linenumbers at the start of each hexdump line may be out of order, lines may be missing, or overlapping. In these cases xxd will lseek(2) to the next position. If the output file is not seekable, only gaps are allowed, which will be filled by null-bytes. xxd -r never generates parse errors. Garbage is silently skipped. When editing hexdumps, please note that xxd -r skips everything on the input line after reading enough columns of hexadecimal data (see option -c). This also means, that changes to the printable ascii (or ebcdic) columns are always ignored. Reverting a plain (or postscript) style hexdump with xxd -r -p does not depend on the correct number of columns. Here anything that looks like a pair of hex-digits is inter- preted. Note the difference between % xxd -i file and % xxd -i < file xxd -s +seek may be different from xxd -s seek, as lseek(2) is used to "rewind" input. A '+' makes a difference if the input source is stdin, and if stdin's file position is not at the start of the file by the time xxd is started and given its input. The following examples may help to clarify (or further confuse!)... Rewind stdin before reading; needed because the `cat' has already read to the end of stdin. % sh -c "cat > plain_copy; xxd -s 0 > hex_copy" < file Hexdump from file position 0x480 (=1024+128) onwards. The `+' sign means "relative to the current position", thus the `128' adds to the 1k where dd left off. % sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +128 > hex_snippet" < file Hexdump from file position 0x100 ( = 1024-768) on. % sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +-768 > hex_snippet" < file However, this is a rare situation and the use of `+' is rarely needed. The author prefers to monitor the effect of xxd with strace(1) or truss(1), whenever -s is used. EXAMPLES
Print everything but the first three lines (hex 0x30 bytes) of file. % xxd -s 0x30 file Print 3 lines (hex 0x30 bytes) from the end of file. % xxd -s -0x30 file Print 120 bytes as continuous hexdump with 20 octets per line. % xxd -l 120 -ps -c 20 xxd.1 2e54482058584420312022417567757374203139 39362220224d616e75616c207061676520666f72 20787864220a2e5c220a2e5c222032317374204d 617920313939360a2e5c22204d616e2070616765 20617574686f723a0a2e5c2220202020546f6e79 204e7567656e74203c746f6e79407363746e7567 Hexdump the first 120 bytes of this man page with 12 octets per line. % xxd -l 120 -c 12 xxd.1 0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "A 000000c: 7567 7573 7420 3139 3936 2220 ugust 1996" 0000018: 224d 616e 7561 6c20 7061 6765 "Manual page 0000024: 2066 6f72 2078 7864 220a 2e5c for xxd".. 0000030: 220a 2e5c 2220 3231 7374 204d ".." 21st M 000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996.." 0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut 0000054: 686f 723a 0a2e 5c22 2020 2020 hor:.." 0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent 000006c: 3c74 6f6e 7940 7363 746e 7567 <tony@sctnug Display just the date from the file xxd.1 % xxd -s 0x36 -l 13 -c 13 xxd.1 0000036: 3231 7374 204d 6179 2031 3939 36 21st May 1996 Copy input_file to output_file and prepend 100 bytes of value 0x00. % xxd input_file | xxd -r -s 100 > output_file Patch the date in the file xxd.1 % echo "0000037: 3574 68" | xxd -r - xxd.1 % xxd -s 0x36 -l 13 -c 13 xxd.1 0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996 Create a 65537 byte file with all bytes 0x00, except for the last one which is 'A' (hex 0x41). % echo "010000: 41" | xxd -r > file Hexdump this file with autoskip. % xxd -a -c 12 file 0000000: 0000 0000 0000 0000 0000 0000 ............ * 000fffc: 0000 0000 40 ....A Create a 1 byte file containing a single 'A' character. The number after '-r -s' adds to the linenumbers found in the file; in effect, the leading bytes are suppressed. % echo "010000: 41" | xxd -r -s -0x10000 > file Use xxd as a filter within an editor such as vim(1) to hexdump a region marked between `a' and `z'. :'a,'z!xxd Use xxd as a filter within an editor such as vim(1) to recover a binary hexdump marked between `a' and `z'. :'a,'z!xxd -r Use xxd as a filter within an editor such as vim(1) to recover one line of a hexdump. Move the cursor over the line and type: !!xxd -r Read single characters from a serial line % xxd -c1 < /dev/term/b & % stty < /dev/term/b -echo -opost -isig -icanon min 1 % echo -n foo > /dev/term/b RETURN VALUES
The following error values are returned: 0 no errors encountered. -1 operation not supported ( xxd -r -i still impossible). 1 error while parsing options. 2 problems with input file. 3 problems with output file. 4,5 desired seek position is unreachable. SEE ALSO
uuencode(1), uudecode(1), patch(1) WARNINGS
The tools weirdness matches its creators brain. Use entirely at your own risk. Copy files. Trace it. Become a wizard. VERSION
This manual page documents xxd version 1.7 AUTHOR
(c) 1990-1997 by Juergen Weigert <jnweiger@informatik.uni-erlangen.de> Distribute freely and credit me, make money and share with me, lose money and don't ask me. Manual page started by Tony Nugent <tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au> Small changes by Bram Moolenaar. Edited by Juergen Weigert. Manual page for xxd August 1996 XXD(1)
All times are GMT -4. The time now is 10:08 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy