KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I was attempting to do a sed replacement in a binary file however I am beginning to believe that is not possible. Essentially what I wanted to do was similar to the following: sed -bi "s/\(\xFF\xD8[[:xdigit:]]\{1,\}\xFF\xD9\)/\1/" file.jpg The logic I wish to achieve is: scan through a binary file until the hex code FFD8 , continue reading until FFD9 , and only save what was between them (discards the junk before and after, but include FFD8 and FFD9 as the saved part of the file) Is there a good way to do this? Even if not using sed ? EDIT: I just was playing around and found the cleanest way to do it IMO. I am aware that this grep statement will act greedy. hexdump -ve '1/1 "%.2x"' dirty.jpg | grep -o "ffd8.*ffd9" | xxd -r -p > clean.jpg
Tags (comma-separated)
Save Edits
Cancel