파일의 헤더 (처음 10 바이트)를 가져와야하는 bash 스크립트를 작성하고 다른 섹션에서 처음 10 바이트를 제외한 모든 것을 가져옵니다. 이 파일은 바이너리 파일이며 처음 10 바이트 동안 ‘s’ \0
와 \n
‘s ‘ 가있을 가능성이 높습니다 . 대부분의 유틸리티가 ASCII 파일에서 작동하는 것 같습니다. 이 작업을 수행하는 좋은 방법은 무엇입니까?
답변
이미 언급했듯이 처음 10 바이트를 얻으려면 다음을 수행하십시오.
head -c 10
처음 10 바이트를 제외한 모든 바이트를 얻으려면 (적어도 GNU 사용 tail
) :
tail -c+11
답변
head -c 10
여기서 옳은 일을합니다.
답변
이 dd
명령을 사용하여 바이너리 파일에서 임의의 바이트 수를 복사 할 수 있습니다 .
dd if=infile of=outfile1 bs=10 count=1
dd if=infile of=outfile2 bs=10 skip=1