If you can write it in code it would look something like this. Note I didn't compile this just copied a part where I open with append and truncate the last 8 bytes off of the end, in your case I set the seek differently: (of course put in appropriate validation tests, I really put in only the necessities here.)
Code:
FILE *fIn, *fOut;
char inBuf[1024];
fIn = open("fin", "rb+");
fOut = open("fout", "wb");
fseek(fIn, 1, SEEK_START);
while(fgets(inBuf, sizeof(inBuf), fIn) != NULL) {
fputs(inBuf, fOut);
}
fclose(fIn);
fclose(fOut);
Test the results of the open for NULL valued results and check your errno's.
Make sure you use the "b" in your opens, so that you maintain the integrity of the binary file.
Don't go in excess of 4096 on the inBuf size, that's just IMHO. I know that PIPE sizes allow up to 65535, just myself many resources limit to 4096; such as serial buffers and such so my tendency is to limit below that value. It really shouldn't matter, whether you use 1024, 4096, or 8192, it adds more calls in the loop, but it shouldn't take too long to process the file.
Sorry, I'm guessing there's a slick script way to do this, but this is more the way I do stuff like this.
Plus, if it's a binary file, likely that I'm writing a program to parse it anyways. And instead of copying it to another file, minus the first byte, I open it, ignore that first byte, and then start my parse.
By the way ... you have a very large binary file, and you're ignoring the first character only? O.K. ... exam question? Seriously, if you have a large file and there truly is one first character to ignore, perhaps it is a command which is echoed and therefore you want it gone. But since the file is binary, you need some other program to deal with parsing it, I'm then guessing that the parser is not written by you, so you merely need to remove that first character so you can use an existing executable to process your binary.
When in doubt, especially with binary files. Write a program to deal with it, because you can then write logs to output the intermediate results, or convert the file entirely to a hex-ascii equivalent so you can view it and see what's up with it.