cp: 오류 메시지에는 어떤 인용문이 사용되나요?

cp: 오류 메시지에는 어떤 인용문이 사용되나요?

현재 죽어가는 하드 드라이브를 만지작거리고 있는데, 하드 드라이브 cp에서 데이터를 가져오는 동안 다음과 같은 오류가 발생합니다.

cp: error reading ‘brokenFile’: Input/output error
# comparison: backtick: `, apostrophe '

sed이제 오류 메시지를 새 메시지로 변환하는 호출을 사용하여 cp실패한 파일을 다시 복사하려고 합니다(몇 번 성공했습니다) . 하지만 재미있는 인용문은 무엇입니까? 시작/끝도 다릅니다. 백틱이나 아포스트로피가 없습니다. 이것을 정규식에 복사/붙여넣었지만 더 좋은 방법이 있습니까? 어쩌면 작성을 사용할까요?

답변1

특정 문자를 찾는 데 유용한 명령은 Free recode(이전의 GNU recode)입니다.

$ echo -n ‘’ | recode ..dump
UCS2   Mne   Description

2018   '6    left single quotation mark
2019   '9    right single quotation mark

또는 unicode명령데비안에서:

$ unicode ‘’
U+2018 LEFT SINGLE QUOTATION MARK
UTF-8: e2 80 98  UTF-16BE: 2018  Decimal: ‘
Category: Pi (Punctuation, Initial quote)
Bidi: ON (Other Neutrals)

U+2019 RIGHT SINGLE QUOTATION MARK
UTF-8: e2 80 99  UTF-16BE: 2019  Decimal: ’
Category: Pf (Punctuation, Final quote)
Bidi: ON (Other Neutrals)

답변2

생성된 문자는 U+2018 LEFT SINGLE QUOTATION MARK( ) 및 U+2019 RIGHT SINGLE QUOTATION MARK( ) 입니다. 이는 현재 로케일을 기반으로 생성된 영어 인쇄 작은따옴표입니다. 현재 키보드 레이아웃에 작성 키가 있는 경우 Compose<'(열기 따옴표) 및 (닫기 따옴표) Compose>'를 사용하여 입력 할 수 있습니다.

그러나 다른 도구를 사용하여 명령 출력을 처리하려는 경우(예: 귀하의 경우) 일반적으로 sed환경 변수를 로 설정하여 로컬로 변경하는 것이 더 쉽습니다. 이런 방식으로 프로그램은 순수 ASCII(보다 일반적으로 모든 출력은 사람이 읽을 수 있음)로 오류 메시지를 출력하며 일반적으로 텍스트 기반 도구를 사용하여 처리하기가 더 쉽습니다.LANGC

관련 정보