쉘 스크립트에서 16진수 패턴을 찾는 방법은 무엇입니까?

쉘 스크립트에서 16진수 패턴을 찾는 방법은 무엇입니까?

이 스레드에 감사드립니다. https://stackoverflow.com/questions/23695609/how-to-grep-for-presence-of-특이적-hex-bytes-in-files

나는 파일에서 특정 16진수 패턴을 grep하고 다음과 같이 bash에서 오프셋을 반환할 수 있다고 결정했습니다.

$ time grep -obUaP -m1 "\xFF\xFF\x00\x01\x00\x01\x04\x02\x00\x00\x00\x00\x00\x00\x00\x00" file.bin
1440710656:��

real    0m0.553s
user    0m0.452s
sys     0m0.101s

하지만 스크립트에 포함시키려고 합니다. Bash에서 정확한 명령을 실행할 때스크립트, 다음과 같이 실패합니다.

$ cat script.sh
#!/bin/bash

time grep -obUaP -m1 "\xFF\xFF\x00\x01\x00\x01\x04\x02\x00\x00\x00\x00\x00\x00\x00\x00" file.bin

$ ./script.sh

real    0m20.888s
user    0m20.505s
sys     0m0.378s

패턴에 작은따옴표를 사용하고 따옴표를 사용하지 않고 변수에 저장하는 등의 작업을 시도했지만 이를 달성하는 방법을 모르겠습니다. 처음에 왜 작동하지 않았는지 모르겠으므로 정확히 무엇을 문제 해결해야 할지 잘 모르겠습니다.

내가 놓친 것에 대한 제안이 있습니까?

관련 정보