특정 호스트에 대한 약 15줄의 항목이 포함된 호스트 파일이 있습니다.
# Entry added by Automation
이러한 모든 호스트 항목에는 항목 내에 텍스트가 있습니다.
예를 들어:
10.122.123.124 file1.auto.test-json.abx.com # Entry added by Automation
10.122.123.125 file2.auto.test-json.abx.com # Entry added by Automation
10.122.123.126 file3.auto.test-json.abx.com # Entry added by Automation
10.122.123.127 file4.auto.test-json.abx.com # Entry added by Automation
해당 줄의 시작 부분에 "#"을 추가 # Entry added by Automation
하거나 줄을 완전히 제거하고 싶습니다.
원하는 출력:
# 10.122.123.124 file1.auto.test-json.abx.com # Entry added by Automation
# 10.122.123.125 file2.auto.test-json.abx.com # Entry added by Automation
# 10.122.123.126 file3.auto.test-json.abx.com # Entry added by Automation
# 10.122.123.127 file4.auto.test-json.abx.com # Entry added by Automation
답변1
sed로 할 수 있어요
"자동화 추가 항목"이 포함된 줄을 확인한 다음 줄의 시작 부분을 #으로 바꿉니다.
sed '/Entry added by Automation/ s/^/# /' -i /etc/hosts
답변2
해당 내용이 포함된 모든 행을 필터링하려면 -'v' 옵션과 함께 'grep'을 사용할 수 있습니다. 예를 들어:
grep -v "# Entry added by Automation" /etc/hosts > /etc/hosts.new
mv /etc/hosts.new /etc/hosts