인쇄 할 수없는 문자가 포함 된 로그 파일에서 모든 줄을 인쇄하는 빠르고 쉬운 방법이 있습니까? 펄 정규 표현식 옵션을로그 파일에서 손상된 문자는 어떻게 찾을 수 있습니까?
int main(int arg, char** argv)
{
char buffer[32];
buffer[0] = 1234;
buffer[1] = '\0';
fprintf(stderr, "TEST %s\n", buffer);
}
인쇄 할 수없는 문자가 포함 된 로그 파일에서 모든 줄을 인쇄하는 빠르고 쉬운 방법이 있습니까? 펄 정규 표현식 옵션을로그 파일에서 손상된 문자는 어떻게 찾을 수 있습니까?
int main(int arg, char** argv)
{
char buffer[32];
buffer[0] = 1234;
buffer[1] = '\0';
fprintf(stderr, "TEST %s\n", buffer);
}
사용 GREP :에 의해 생성 될 수 라인
TEST Ò
처럼. 이 너무 포괄적 또는 충분히 포함하지 않은 경우 당신은 (아마도 탭이 확인되는 특정 유니 코드 문자를 확인 고려 될 수있다?) 문자의 오른쪽 범위를 대상으로 정규 표현식을 변경할 수 있습니다
는grep -n -P "[\x01-x\09]|[\x0B-\x0C]|[\x0E-\x1F]|[\x7F-\xFF]" log.txt
나는
을 사용하십시오지정된 범위 이외의 문자로 모든 행을 인쇄합니다.
설명 :
awk -e
다음 코드
'!/^[A-Z]*$
으로 AWK 프로그램을 호출이 일치하지 않습니다 아무것도 (!
) 정규식 ^[A-Z]*$
{print $0}'
규칙이 일치하면 전체 줄을 인쇄하십시오.
./test
은 작업 할 파일을 전달합니다.
참고 : 충분한 테스트 데이터를 제공하지 않았으므로 정규 표현식을 데이터에 맞게 조정해야 할 수도 있습니다.
우리는 당신이 무엇을 필요로하는지 짐작할 수 있지만, '부패한 문자들'과 '나쁜'printf' 호출의 예를 제공해주세요. –
제어 문자와 같은 비 인쇄 문자를 말하는다고 가정합니다. –
예, 인쇄 할 수없는 문자, 예를 들어 설명했습니다. – dshin