|
은 줄의 시작 부분에서 무엇을 의미합니까?| 줄의 처음에 - bash
tr -d '?."!:,();' < manywords \
| tr 'A-Z' 'a-z' \
| tr ' ' '\n'
내가 사용 자원이 작동합니다 있다고하지만 난 그것을 실행할 때, 나는 syntax error near unexpected token
를 얻을 수 | '`
|
은 줄의 시작 부분에서 무엇을 의미합니까?| 줄의 처음에 - bash
tr -d '?."!:,();' < manywords \
| tr 'A-Z' 'a-z' \
| tr ' ' '\n'
내가 사용 자원이 작동합니다 있다고하지만 난 그것을 실행할 때, 나는 syntax error near unexpected token
를 얻을 수 | '`
구문 오류가 빈 줄 예정이다.
tr -d '?."!:,();' < manywords \
| tr 'A-Z' 'a-z' \
| tr ' ' '\n'
. \
는 "이 명령은 다음 줄에 계속"을 의미한다, 그래서 이것은 단지
tr -d '?."!:,();' < manywords | tr 'A-Z' 'a-z' | tr ' ' '\n'
더 읽기를 제외하고있다.
그것은 pipe입니다. 백 슬래시는 줄 연속 문자입니다.
문제는 아마도 빈 줄 때문일 수 있습니다. 대신이 시도 :
tr -d '?."!:,();' < manywords \
| tr 'A-Z' 'a-z' \
| tr ' ' '\n'
이 또는 당신이 한 줄에 모두 쓸 수있다 :
tr -d '?."!:,();' < manywords | tr 'A-Z' 'a-z' | tr ' ' '\n'
줄의 시작이 아닙니다. 이전 라인의 끝에있는 \
다음 줄 바꿈 처리에서 무시해야 함을 나타냅니다 - bash manual에서 :
비 인용 백 슬래시() 이스케이프 문자입니다. 뒤에 오는 문자의 리터럴 값을 보존하며 예외는 입니다. \ 쌍을 표시하고, 백 슬래시 인용 그 자체 인 경우, \는 행 계속 로 처리됩니다 (즉,이 입력 스트림에서 제거 하고 효과적으로 무시)
당신의 명령은 기능적이어야한다
tr -d '?."!:,();' < manywords | tr 'A-Z' 'a-z' | tr ' ' '\n'
하지만 당신은 것에 해당 여분의 줄 바꿈을 추가합니다.
빈 줄을 제거하는 것 외에도 가독성을 높이기 위해 연속 줄을 들여 쓰겠습니다 (예 : 4 줄). –