몇 가지 기호를 공백으로 바꾸려고 하는데 tr
이것이 올바른 명령이라고 생각합니다. 그래서 나는 노력했다
cat myfile | tr '_[]()-/' ' '
그런데 오류가 났어요
range-endpoints of ']-/' are in reverse collating sequence order
아마도 입력 문자에 빼기 기호를 사용할 수 없기 때문일 것입니다. 을 사용하여 이 작업을 수행할 수 있나요 tr
?
답변1
이 메시지는 GNU에서 온 것으로 보이며 tr
로케일의 일부 문제로 인해 발생했을 수 있습니다. 이것정보페이지 에서는 세트의 일부로 혼동되지 않도록 세트의 tr
마지막 항목을 넣을 것을 권장합니다.-
범위,예를 들어,
cat myfile | tr '_[]()/-' ' '
답변2
모든 POSIX의 경우 tr
:
tr '_][()/-' '[ *]' <file
작동합니다.
[ *]
POSIX가 필요합니다. 존재하다:
tr string1 string2
언제문자열 2비교하다. . . 짧은문자열 1, BSD가 tr
채워집니다문자열 2마지막 캐릭터는문자열 2이므로 tr '_][()/-' ' '
효율성이 보장되지 않습니다.