Я хотел бы, чтобы проверить мой тестовый код,Как декодировать нулевой символ, ' 0', командой base64 в оболочке bash?
$ printf 'A\0B' | base64
выход был
QQBC
Чтобы проверить это, я декодирую кодированное значение выше по
$ printf 'A\0B' | base64 | base64 -d
$ printf "\n"
Тогда выход был
AB
Отсутствует символ «\ 0».
Это правильное поведение или у меня есть решение сохранить нулевой символ?
спасибо.
'\ 0' не хватает, 'printf 'A \ 0B' | base64 | base64 -d | wc -c' получит результат 3, как и ожидалось. – sigmalha
'printf 'A \ 0B' | base64 | base64 -d | od -c' покажет правильный результат – sigmalha
Спасибо, сигмала. Результат вашего пути в моей среде - 0000000 A \ 0 B. Ваш метод показывает оригинальный символ «\ 0», как и даже после декодирования. Легче подтвердить интуитивно достоверность кодирования/декодирования. – mora