Übersicht
sed ist ein leistungsstarkes Werkzeug zur Bearbeitung von Textströmen. Mit der Option -f können sed-Befehle in einer separaten Skriptdatei gespeichert und ausgeführt werden. Dies ist sehr nützlich für die Verwaltung komplexer Skripte oder wenn mehrere sed-Befehle gleichzeitig angewendet werden müssen.
Hauptmerkmale
- Einfache Verwaltung komplexer Skripte
- Erhöhte Wiederverwendbarkeit von Skripten
- Integration mehrerer sed-Befehle in einer Datei
- Einfache Versionskontrolle und Freigabe
Wichtige Optionen
Dies sind die am häufigsten verwendeten Optionen bei der Verwendung von sed -f.
Skriptdatei angeben
Weitere nützliche Optionen
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`sed` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Anwendungsbeispiele
Dies sind verschiedene Anwendungsbeispiele für den sed -f-Befehl.
Verwendung einer grundlegenden Skriptdatei
echo 'This is an apple.' > input.txt
echo 's/apple/orange/g' > script.sed
sed -f script.sed input.txt
Erstellt eine Datei script.sed mit dem Befehl 's/apple/orange/g' und wendet sie auf die Datei input.txt an.
Skriptdatei mit mehreren Befehlen
echo -e 'This is an error.\n# This is a comment.\nAnother error.' > data.txt
echo -e 's/error/ERROR/g\n/^#/d' > multi.sed
sed -f multi.sed data.txt
Erstellt eine Datei multi.sed mit mehreren sed-Befehlen und wendet sie auf die Datei data.txt an. (z. B. 'error' in 'ERROR' ändern und Zeilen, die mit '#' beginnen, löschen)
Direkte Dateibearbeitung und Sicherung
echo 'This is old_text.' > file.txt
echo 's/old_text/new_text/g' > replace.sed
sed -i.bak -f replace.sed file.txt
cat file.txt
cat file.txt.bak
Bearbeitet die Datei file.txt direkt mit dem Befehl in der Datei replace.sed und erstellt eine Sicherungskopie mit der Erweiterung .bak.
Ausgabe bestimmter Zeilen mit der Option -n
echo -e 'Line 1\nLine 2\nLine 3' > log.txt
echo '2p' > print_line.sed
sed -n -f print_line.sed log.txt
Erstellt eine Datei print_line.sed mit dem Befehl '2p', um nur die zweite Zeile der Datei log.txt auszugeben.
Tipps & Hinweise
Dies sind nützliche Tipps und zu beachtende Punkte bei der Verwendung von sed -f.
Berechtigungen für Skriptdateien
Skriptdateien, die mit sed -f ausgeführt werden, benötigen keine Ausführungsberechtigung. Nur Leseberechtigung ist erforderlich.
Fehlersuche
Wenn ein sed-Skript nicht wie erwartet funktioniert, können Sie die Option -n in Kombination mit dem p-Befehl verwenden, um zu überprüfen, ob ein bestimmtes Muster übereinstimmt, oder den l-Befehl (list), um nicht druckbare Zeichen anzuzeigen.
Kombination von -e und -f
Sie können einfache Befehle direkt mit der Option -e angeben und komplexe Skriptdateien mit der Option -f zusammen verwenden. Dies ermöglicht eine flexible Skripterstellung.
Verwaltung von Sicherungsdateien
Bei Verwendung der Option -i ist es ratsam, eine Sicherungsdatei zu erstellen. Unnötige Sicherungsdateien sollten regelmäßig bereinigt werden.