>

여러 기호를 공백으로 바꾸려고하는데 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
    
    
    string2string1보다 짧은 경우, BSD tr  string2의 마지막 문자로string2를 채우므로 tr '_][()/-' ' '  작동하지 않을 수 있습니다.

  • 이전 bash - 완전한 키 값 쌍
  • 다음 USB 스틱에있는 스크립트에서 USB 스틱을 마운트 해제하는 방법은 무엇입니까?