Ich möchte bestimmten Text in einem Verzeichnis suchen, und löschen Sie dann die Zeilen aus den Dateien, die den spezifischen Text enthalten.finden Sie bestimmten Text in einem Verzeichnis und löschen Sie die Zeilen aus den Dateien
Jetzt habe ich zwei Fragen:
- Wie kann ich die Aufgabe erreichen?
Was ist los mit Was ich versucht habe? Ich habe die folgenden Methoden ausprobiert, aber gescheitert. die Details sind folgende:
grep -rnw "./" -e "webdesign"
Dies das aktuelle Verzeichnis mit Muster „webdesign“ sucht, und ich bekomme das Ergebnis:
.//pages/index.html:1:{% load webdesign %} .//pages/pricing.html:1:{% load webdesign %} .//prototypes.py:16: 'django.contrib.webdesign',
Dann benutze ich sed die Linien aus diesen Dateien zu entfernen, die doesn ‚t Arbeit, bekommt nur leere Datei (ich meine es alle meinen Dateiinhalt löscht):
sed -i "/webdesign/d" ./pages/index.html or sed "/webdesign/d" ./pages/index.html > ./pages/index.html
Meine Software environ ment ist: OS X Yosemite, Mac Terminal Bash
'sed -i"/webdesign/d "./Pages/index.html sollte genau das tun, was Sie wollen. –
@ Jean-FrançoisFabre: Macs 'sed' unterstützt' -i' nicht. – choroba
Der Befehl erhält nur den leeren Inhalt in meiner Datei. @ Jean-FrançoisFabre – soarinblue