etc/hosts의 행을 수정하는 방법은 무엇입니까? 특정 도메인의 줄 시작 부분에 #을 추가하시겠습니까?

etc/hosts의 행을 수정하는 방법은 무엇입니까? 특정 도메인의 줄 시작 부분에 #을 추가하시겠습니까?

특정 호스트에 대한 약 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

관련 정보