끝나지 않은 또 다른 's' 명령

끝나지 않은 또 다른 's' 명령

IPv4 주소 스크립트를 간단히 교체하려고 합니다.

sed "s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g"

이것이 내가 가진 것입니다. 제목 그대로 종료되지 않은 's' 명령을 받았습니다.

편집: 저는 Windows에서 실행 중이며 SSH를 통해 Unix 시스템에 연결되어 있습니다.

원래 가지고 있던 것 :

 sed 's/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g'

하지만 뭔가가 예상대로 읽히지 않아 오류가 발생할 수 있기 때문에 작은따옴표에서 큰따옴표로 변경했습니다. 테스트해봤는데 결과는 여전히 "명령이 종료되지 않았습니다"입니다.

어떤 아이디어나 제안이라도 좋습니다!

전체 스크립트

#!/bin/sed -f

#sed 's/[^@ ]*@[^@]*\.[^@ ]*\.[^@]*/[email protected]/g'

#sed 's/[^@]*\.[^@]*\.[^@]*/example.com/g'

sed "s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g"

파일 입력 예:

From: Mail System Internal Data <[email protected]>
Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATA
X-IMAP: 1322061792 0000000000
Status: RO

Email message goes here.

From [email protected] Tue Nov 22 15:24:01 2011 -0500
Status: R
X-Status:
X-Keywords:
Return-Path: <[email protected]>
X-Original-To: [email protected]
Delivered-To: [email protected]

답변1

귀하의 스크립트는 sed쉘 스크립트가 아닌 스크립트입니다. 따라서 sed줄 시작 부분 에 넣거나 명령 주위에 따옴표를 넣을 필요가 없습니다 . 다음으로 변경하세요.

#!/bin/sed -f

s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/192.100.100.100/g

관련 정보