Ein weiterer nicht beendeter 's'-Befehl

Ein weiterer nicht beendeter 's'-Befehl

Ich versuche, einen einfachen Ersatz für ein IPv4-Adressskript zu erstellen.

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

Das ist, was ich habe. Wie im Titel angegeben, erhalte ich einen nicht beendeten „s“-Befehl.

Bearbeiten: Ich verwende Windows und verbinde mich über SSH mit einem Unix-Rechner.

Ich hatte ursprünglich:

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

Aber ich habe es von einfachen Anführungszeichen in doppelte Anführungszeichen geändert, weil etwas möglicherweise nicht wie beabsichtigt gelesen wurde und dies meinen Fehler verursacht haben könnte. Ich habe es getestet und das Ergebnis blieb immer noch das gleiche „unbeendeter ‚s‘-Befehl“.

Alle Ideen und Ratschläge sind willkommen!

Gesamtes Skript

#!/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"

Beispiel für die Dateieingabe:

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]

Antwort1

Ihr Skript ist ein sedSkript, kein Shell-Skript. Sie müssen also nichts sedam Zeilenanfang oder Anführungszeichen um die Befehle setzen. Ändern Sie es in:

#!/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

verwandte Informationen