
명령어 에 관해 질문이 있습니다 sed
. 빈 공간과 선택한 문자 사이의 문자(또는 문자 집합)를 제거할 수 있나요? 다음과 같이 여러 줄의 텍스트가 포함된 목록이 있는 경우:
a = 5 * x + 3 n\exit>
a = 5 * x + 7 abndc\exit>
... 등 기타
얻기 위해
a = 5 * x + 3
a = 5 * x + 7
기타 등등
명령을 사용하고 있습니까 sed
?
따라서 기본적으로 다음 공간에서 모든 것을 제거합니다 3
.>
답변1
2가지 접근법
마지막 공백까지 모든 것을 유지하십시오.
sed 's/\(.*\) .*/\1/'
줄 끝에서 공백과 공백이 아닌 부분을 찾아서 제거하십시오.
sed 's/ [^ ]*$//'
답변2
sed -r 's/(.*)( \S+>)/\1/' file
a = 5 * x + 3
a = 5 * x + 7