Sponsored Content
Top Forums Shell Programming and Scripting convert hex to binary and send to variable Post 302476500 by rdcwayx on Wednesday 1st of December 2010 09:32:16 PM
Old 12-01-2010
Code:
$ cat hex2bin.awk

BEGIN {
FS=""
a["f"]="1111"
a["e"]="1110"
a["d"]="1101"
a["c"]="1100"
a["b"]="1011"
a["a"]="1010"
a["9"]="1001"
a["8"]="1000"
a["7"]="0111"
a["6"]="0110"
a["5"]="0101"
a["4"]="0100"
a["3"]="0011"
a["2"]="0010"
a["1"]="0001"
a["0"]="0000"
}
{
for (i=1;i<=NF;i++) printf a[tolower($i)]" "
print ""
}

$ set -- $(echo 40e3 |awk -f hex2bin.awk)

$ echo $1
0100

$ echo $2
0000

$ echo $3
1110

$ echo $4
0011

After run above set command, you will get var $1,$2, $3,,, $8 directly.

Last edited by rdcwayx; 12-02-2010 at 02:14 AM.. Reason: a[tolower($i)]
This User Gave Thanks to rdcwayx For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Binary and hex in unix

not much familiar with binary and hex calculation in script programming.... explaination: binary format control the parameter turned on or off in the program stored in hex mode, the question is: how to change 39e to 19e using the binary calculation(although i don't know the command for... (2 Replies)
Discussion started by: trynew
2 Replies

2. UNIX for Advanced & Expert Users

Modifying binary file by editing Hex values ?

Hi , i'm using special binary file (lotus notes) and modifying an hexadecimal address range with windows hex editor and it works fine ! The file is an AIX one and i'm forced to transfert (ftp) it before modifying it and re-transfert ! NOW i would do this directly under AIX ! I can... (4 Replies)
Discussion started by: Nicol
4 Replies

3. Programming

to convert int to hex

Hi, Can you help me in converting int value to hex in a single command. Thanks (8 Replies)
Discussion started by: naan
8 Replies

4. Shell Programming and Scripting

How to Convert Hex value to Dec ?

Hi All, I want to convert below Hex value to Dec value in each column .How to do it ? This data is in a 1 file. 4e20 0475 2710 010f 7530 69a2 7530 7e2f 4e20 02dd 7530 6299 4e20 0c0a 7530 69a2 4e20 0a0b 2710 0048 7530 7955 4e20 0d23 7530 622d 7530 9121 2710 001f 7530 7d3f (6 Replies)
Discussion started by: Nayanajith
6 Replies

5. Shell Programming and Scripting

binary/hex output

i want to output something like 2f 00 00 00 but i can't seem to escape characters like i'm used to in some programming languages, so with this: echo "/\0\0\0" >> outputfile i actually get 2f 5c 30 5c 30 5c 30 0a ie the \0 isn't giving me the 00 i need, and in addition it has got an... (8 Replies)
Discussion started by: peterworth
8 Replies

6. Programming

Convert HEX to EBCDIC IN C

i want to convert Hex value To EBCDIC value. i tried to convert hex to ascii and then to ebcdic but it doesn't give desired results . it doesn't give corresponding ebcdic value instead it gives some junk values. e.g; Hex EBCDIC ----------------- 81 a 82 b 83 c 84 d 85 e 86 f 87... (6 Replies)
Discussion started by: junaid.nehvi
6 Replies

7. Shell Programming and Scripting

Convert Hex - KSH

Hello, I woild like to convert hex on KSH not BASH: I tried to use: tmp=31 printf "\x"${tmp}"" it works on bash - Output is '1' but not on ksh. please advice on the right syntax. Thanks. (4 Replies)
Discussion started by: LiorAmitai
4 Replies

8. Shell Programming and Scripting

Convert hex to decimal

can someone help me in converting hex streams to decimal values using perl script Hex value: $my_hex_stream="0c07ac14001676"; Every hex value in the above stream should be converted in to decimal and separated by comma. The output should be: 12,07,172,20,00,22,118 (2 Replies)
Discussion started by: Arun_Linux
2 Replies

9. Shell Programming and Scripting

Convert binary file to csv and then back to the binary format

Hello *nix specialists, Im working for a non profit organisation in Germany to transport DSL over WLAN to people in areas without no DSL. We are using Linksys WRT 54 router with DD-WRT firmware There are at the moment over 180 router running but we have to change some settings next time. So my... (7 Replies)
Discussion started by: digidax
7 Replies

10. Shell Programming and Scripting

Convert Binary File To Hex In Linux

dHi, I have the attached file(actual file can be extracted post unzipping it) & i am trying to use the following code for coversion to hex format. Starting hex value is 84 which is start of the record & termination is done using 00 00 followed by 84(hex) which i can see in the dump clearly using... (14 Replies)
Discussion started by: siramitsharma
14 Replies
btohex(3TSOL)					       Trusted Extensions Library Functions					     btohex(3TSOL)

NAME
btohex, bsltoh, bcleartoh, bsltoh_r, bcleartoh_r, h_alloc, h_free - convert binary label to hexadecimal SYNOPSIS
cc [flag...] file... -ltsol [library...] #include <tsol/label.h> char *bsltoh(const m_label_t *label); char *bcleartoh(const m_label_t *clearance); char *bsltoh_r(const m_label_t *label, char *hex); char *bcleartoh_r(const m_label_t *clearance, char *hex); char *h_alloc(const unsigned char type); void h_free(char *hex); DESCRIPTION
These functions convert binary labels into hexadecimal strings that represent the internal value. The bsltoh() and bsltoh_r() functions convert a binary sensitivity label into a string of the form: [0xsensitivity_label_hexadecimal_value] The bcleartoh() and bcleartoh_r() functions convert a binary clearance into a string of the form: 0xclearance_hexadecimal_value The h_alloc() function allocates memory for the hexadecimal value type for use by bsltoh_r() and bcleartoh_r(). Valid values for type are: SUN_SL_ID label is a binary sensitivity label. SUN_CLR_ID label is a binary clearance. The h_free() function frees memory allocated by h_alloc(). RETURN VALUES
These functions return a pointer to a string that contains the result of the translation, or (char *)0 if the parameter is not of the required type. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Obsolete | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe with exceptions | +-----------------------------+-----------------------------+ The bsltoh(), bcleartoh(), bsltoh_r(), bcleartoh_r(), h_alloc(), and h_free() functions are Obsolete. Use the label_to_str(3TSOL) function instead. The bsltoh() and bcleartoh() functions share the same statically allocated string storage. They are not MT-Safe. Subsequent calls to any of these functions will overwrite that string with the newly translated string. The bsltoh_r() and bcleartoh_r() functions should be used in multithreaded applications. SEE ALSO
atohexlabel(1M), hextoalabel(1M),label_to_str(3TSOL), libtsol(3LIB), attributes(5), labels(5) NOTES
The functionality described on this manual page is available only if the system is configured with Trusted Extensions. SunOS 5.11 20 Jul 2007 btohex(3TSOL)
All times are GMT -4. The time now is 03:55 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy