Как преобразовать двоичные файлы в байты в Bash - PullRequest
0 голосов
/ 14 января 2019

Как преобразовать следующий код go в bash

    data, _ := base64.StdEncoding.DecodeString("nJpGBA==")
    fmt.Println(data)

    //Output
    [156 154 70 4]

Я поднялся сюда

    echo nJpGBA== |base64 -d 

https://play.golang.org/p/OfyztKQINg9

1 Ответ

0 голосов
/ 14 января 2019

Не точное совпадение, но:

echo nJpGBA== |base64 -d  | od -A n -t u1

Выход: 156 154 70 4

Обратите внимание на начальный пробел и несколько пробелов между.

Другое решение. Присвойте его массиву:

val_array=( $(echo nJpGBA== |base64 -d  | od -A n -t u1) )
echo "${val_array[@]}"

Выход: 156 154 70 4

Команда od выводит все двоичные файлы по умолчанию в восьмеричных значениях. Здесь он читает со стандартного ввода, поскольку файл не указан.

  • -A n подавляет вывод байтовых адресов
  • -t u1 печатает один байт десятичных знаков без знака
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...