Bash에서 특정 16진수 문자를 제거하는 방법은 무엇입니까?

Bash에서 특정 16진수 문자를 제거하는 방법은 무엇입니까?

나는 사람들이 트위터에서 팔로우할 단어 목록을 작성했습니다. 그러나 문제가 있습니다. xxd를 cat하고 실행하면 숨겨진 문자가 추가로 발견됩니다. 그것은 1b5b 6d1b 5b4b입니다. 이런 캐릭터들을 없애야 해요. 이름이 007_sharky라고 가정하고, 그것을 찾았을 때 00000000: 3030 375f 7368 6172 6b79 1b5b 6d1b 5b4b 007_sharky.[m.[K 00000010: 0a

하지만 난 얻어야 해

00000000: 3030 375f 7368 6172 6b79 0a 007_sharky.

여러 줄 중 한 줄에서만 작동하는 것이 아니므로 이렇게 할 수 있습니다.

cat file | while read line; do
something 
done

일부 부분이 누락되었습니다. 이러한 문자를 어떻게 제거할 수 있습니까? 또, cut awk, grep을 이용하여 포맷한 후 실수로 파일을 다시 삭제해서 이런 내용이 나왔습니다. 그리고 첫 번째 사진은 새 것이고, 두 번째 사진은 오래된 것입니다.완벽한bash xxd 이미지

https://gist.github.com/machinexa2/293823309ad804866b32b59eda17526d

답변1

각 줄의 시작 부분에는 정확히 6바이트의 추가 바이트가 있는 것 같습니다. 따라서 다음을 사용할 수 있습니다.

cut -b 7- temp > result

관련 정보