GNU sed v3.02.80, GNU sed v1.03 и HHsed v1.5 Говард Хелман
все поддерживают обозначение \xNN
, где "NN" - два действительных шестнадцатеричных числа, 00-FF.
Вот как заменить последовательность HEX в вашем двоичном файле:
$ sed 's/\x0D\x4D\x53\x48/\x0D\x0A\x4D\x53\x48/g' file > temp; rm file; mv temp file
Как отметил @sputnik, вы можете использовать in place
функциональность sed. Одно предостережение: если вы используете его в OS / X, вам придется добавить пустой набор цитат:
$ sed '' 's/\x0D\x4D\x53\x48/\x0D\x0A\x4D\x53\x48/g' file
Как и sed in place
в OS / X принимает параметр , чтобы указать, какое расширение добавить к имени файла при создании резервной копии, поскольку сначала создает временный файл , Но тогда .. sed
OS / X не поддерживает \x
.