Schreiben Sie eine Unix-shell script, das wird Bearbeiten Sie eine bestimmte Zeile ein .in der Datei
Ich möchte ein Programm ausführen, mehrmals mit leicht unterschiedlichen Eingänge. Die Eingabedatei ist eine lange .in der Datei, und ich würde nur wollen, Bearbeiten Sie eine einzelne Zahl in eine bestimmte Zeile der Datei. Also im Idealfall würde ich mag zu schreiben, ein Unix-Skript, das wiederholt sich dieser Vorgang mehrmals:
- Bearbeitet eine Zeile in einer .in der Datei
- Wird ein Programm verwendet, die Datei als Eingabe
- Benennt die Ausgabe .nc-Datei aus dem Programm auf und speichert es
Ich bin komplett neu in dieser Art von scripting, und während ich bin mir ziemlich sicher, kann ich herausfinden, wie sich die Schritte 2 und 3 dieser Prozess, ich bin mir nicht sicher, wie der zweite Schritt. Ist es möglich, verwenden Sie ein Skript zur Automatisierung der Bearbeitung von ein .in der Datei, und wie soll ich das tun?
sed
- Befehl, um eine inline-Bearbeitung@JoeC, sagte sed wäre Ihre beste Wette mit einem regulären Ausdruck übereinstimmt Linie. Gibt es andere ähnliche Zeilen in der Datei?
Wenn Sie sicher sind, dass die Nummer der Zeile, wird immer die gleiche sein, die Sie verwenden können, die
head
und tail
Befehle zum aufteilen der Datei in die Hälfte und dann verketten Sie zurück zusammen mit cat
bestehen des ersten Teils, neue Zeile, und dann die zweite Hälfte.Wenn Sie sicher sind, die Zahl wird immer die gleiche sein, die Sie noch verwenden sollten
sed
.InformationsquelleAutor Sophie | 2013-11-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist ein Beispiel, das sollte Ihnen den Einstieg:
Lassen Sie mich wissen, wenn Sie weitere Hilfe benötigen.
InformationsquelleAutor janos