여러 서버의 파일에서 특정 텍스트로 시작하는 줄을 찾은 다음 전체 줄을 바꾸는 sed 또는 perl 명령을 찾고 있습니다. 줄은 항상 동일한 문자열로 시작하지만 나머지는 다를 수 있습니다. 그래서 처음과 상당히 잘 어울리는 것이 필요하고 모든 것을 교체합니다.
예를 들어
서버 1: myfile.txt
SAMail: [email protected]
서버 2: myfile.txt
SAMail: [email protected]
서버 3: myfile.txt
SAMail: [email protected]
file.txt
세 서버 모두의 My에서 "SAMail:"을 찾아 다음으로 바꾸려면 명령이 필요합니다.SAMail: [email protected]
답변1
sed
내가 올바르게 이해했다면 이것은 하나의 가능성입니다.
입력하다
SAMail: [email protected]
foo: [email protected]
foo SAMail
sed '/^SAMail/s;[^ ]*$;[email protected];' "My file.txt"
산출:
SAMail: [email protected]
foo: [email protected]
foo SAMail