GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Text allen Dateien in einem Ordner voranstellen?

Für diese Frage gibt es hier bereits Antworten :Wie kann jeder Textdatei in einem Verzeichnis und seinen Unterverzeichnissen ein bestimmter Inhalt einer Textdatei vorangestellt werden?

(6 Antworten)
Vor 3 Jahren geschlossen.

Ich möchte allen .m-Dateien in einem Ordner einen Text voranstellen, der in der Datei disclaimer.txt enthalten ist.

Folgendes habe ich versucht:

text=$(cat ./disclaimer.txt)

for f in ./*.m
do
   sed -i '1i $text' $f
done

aber es wird nur eine leere Zeile vorangestellt.

Akzeptierte Antwort:

Es gibt viele Möglichkeiten, dies zu tun, aber hier ist ein schneller erster Versuch:

#!/bin/sh
for file in *.m; do
    cat disclaimer.txt $file >> $file.$$
    mv $file.$$ $file
done

Es verkettet den Haftungsausschluss zusammen mit der Originaldatei in einer neuen temporären Datei und ersetzt dann die Originaldatei durch den Inhalt der temporären Datei.


Linux
  1. So fügen Sie unter Linux Text an das Dateiende an

  2. Alle Dateien bis zum Match anzeigen?

  3. Alle Linux-Befehle zum Komprimieren/Dekomprimieren

  4. Wie füge ich Text an eine Datei an?

  5. Wie wähle ich den gesamten Text aus einer Datei mit Nano aus?

So entfernen Sie alle Dateien in einem Ordner außer einer bestimmten Datei in Linux

So entfernen Sie alle Leerzeichen aus einer Textdatei

Wie finde ich alle unterschiedlichen Dateierweiterungen in einer Ordnerhierarchie?

Wie leite ich einen Unterprozessaufruf an eine Textdatei weiter?

Ändern aller Dateierweiterungen in einem Ordner mit CLI in Linux

Behalten Sie einen Verlauf aller Änderungen an einer Textdatei