Есть файл message.txt. Там содержится хэш, сертификат и сами данные.
Хэш начинается от начала файла и заканчивается перед началом сертификата(-----BEGIN CERTIFICATE-----), сам же сертификат заканчивается на:
Я уже перепробовал кучу вариантов, но так и не смог нормально разбить файл. Очень нужна помощь.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.
В подобных случаях я использую Midnight Commander и команду dd.
Просматривая двоичный файл (F3) в Midnight Commander можно определить позицию начала и конца нужного фрагмента, а командой dd скопировать этот фрагмент в отдельный файл. Здесь об этом хорошо написано.
Еще потребуется калькулятор для перевода шестнадцатеричных позиций в Midnight Commander в десятичную систему счисления для команды dd.
Например, для копирования хэша в файл hash.txt:
dd if=message.txt of=hash.txt bs=1 count=512
Есть файл message.txt. Там содержится хэш, сертификат и сами данные.
Хэш начинается от начала файла и заканчивается перед началом сертификата(-----BEGIN CERTIFICATE-----), сам же сертификат заканчивается на:
Код
-----END CERTIFICATE-----
Данные в message, это:
Код
Text for test1
11111111111111
Stroka 3
Сертификат „вытаскивается“ так: sed -n '/BEGIN/,/END/ p' message.txt
Данные вот так: sed '1,/END/ d'
Если интересует хэш, то так: sed '/BEGIN/,$ d'
Последняя команда не очень-то правильная. Лучше бы так: sed '/BEGIN/ q'
так и записывается короче, и выполняется быстрее. (На больших файлах может даже быть заметно).
Да и в остальные по желанию можно добавить преждевременный выход (уже из соображений скорости выполнения, а не скорости написания).
Значит sed - это наше все smile.gif , а я ошибочно считал, что им только текстовые файлы можно обрабатывать.
dd в нашем случае действительно пусть отдыхает.
есть некоторые тонкости:
1) если в файле мало символов \n, то возможны "строки" в несколько гигабайт, и они будут в ОЗУ :(
2) если включен режим UTF-8, то возможны "несимволы", которые приводят к неожиданностям, и даже к опасности взлома.
Большое спасибо. А то я уже на перле сделал. Но это покруче будет. В очередной раз убеждаюсь, что sed очень полезная весчь.
PS. Задам тут же ещё один вопрос.
Есть, к примеру, в скрипте такая строчка:
При подписи, спрашивается пароль секретного ключа (CAkey.pem). Посдкажите как сделать, чтобы пароль он получал сам, не спрашивая или что-то в этом роде.
Насколько я понимаю, это можно сделать перенаправлением. Но как точно, пока не смог понять.
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.
Спс, всё работает.
PS. Я смотрел ман. Видимо, плохо посмотрел.
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.