파일에서 ")"로 끝나는 모든 줄의 모든 "/"를 ")"로 변경하는 방법

파일에서 ")"로 끝나는 모든 줄의 모든 "/"를 ")"로 변경하는 방법

vim을 사용하고 있는데 all /를 )로 변경하는 방법은 알 것 같은데 )로 끝나는 줄에만 적용하는 방법은 모르겠습니다.

나는 이것을 바꾸고 싶다:

apples/oranges/grapes) 
apples/oranges/grapes 
apples/oranges/grapes)      
apples/oranges/grapes

이와 관련하여:

apples)oranges)grapes)
apples/oranges/grapes
apples)oranges)grapes)
apples/oranges/grapes

답변1

솔루션은 vim솔루션과 매우 유사합니다 sed.

:g/)$/s!/!)!gEnter

마지막 문자가 있는 줄만 편집하고 싶다고 가정합니다 ). )마지막 줄을 포함하고 싶다면공백이 아닌자연, 용도

:g/)\s*$/s!/!)!gEnter
\s코드는 어디에 있나요?에스스피드 문자(스페이스 또는 탭)입니다. 내가 사용하는 !방식하우크라그목적은 +개인 취향의 문제일 뿐입니다.

답변2

sed '/) *$/s+/+)+g' input

/) *$/구성 요소는 변경할 행을 선택합니다. *그것은 그 뒤에 있는 공간과 관련이 있습니다 ). 그러나 아마도 이러한 공간은 의도적인 것이 아닐 수도 있습니다.

관련 정보