Shell 将位串转换为文本值代码的脚本
Shell scipt to convert bit string to text value code
我有 32 位的 0 字符串。字符串中的每一位代表一些代码,例如
1000000000000000000000000000000 = ABC
0100000000000000000000000000000 = DEF
...
0000000000000000000000000000001 = XYZ
我有字符串位的文件,有没有办法shell将输出编写成代码
为了。例如
1100000000000000000000000000000 should print ABC|DEF
感谢您的意见。
编辑1:
@nullPointer:3 位字母是 32 位表示的人类可读表示的示例。
在bash中:
codes=("ABC" "DEF" ... "XYZ")
bitstring=1100000000000000000000000000000
outstring=""
for i in {0..31}; do
if [ "${bitstring:i:1}" = 1 ]; then
outstring+="|${codes[i]}"
fi
done
echo "${outstring#|}"
我有 32 位的 0 字符串。字符串中的每一位代表一些代码,例如
1000000000000000000000000000000 = ABC
0100000000000000000000000000000 = DEF
...
0000000000000000000000000000001 = XYZ
我有字符串位的文件,有没有办法shell将输出编写成代码 为了。例如
1100000000000000000000000000000 should print ABC|DEF
感谢您的意见。
编辑1: @nullPointer:3 位字母是 32 位表示的人类可读表示的示例。
在bash中:
codes=("ABC" "DEF" ... "XYZ")
bitstring=1100000000000000000000000000000
outstring=""
for i in {0..31}; do
if [ "${bitstring:i:1}" = 1 ]; then
outstring+="|${codes[i]}"
fi
done
echo "${outstring#|}"