Kurznotiz, gilt für Mac / Linux / Unix / (bei Windows hilft nur „format c:“ ;) )
Oft muss ich in einem Ordner schnell mal alle Dateien sichern als Backup da ich sie im nächsten Moment überschreibe.
Um nicht den ganzen übergeordneten Ordner gleich komplett sichern zu müssen sondern nur die Dateien im aktuellen Ordner ohne Unterverzeichnisse zu sichern habe ich folgenden befehl:
for i in *.*; do cp $i $i.bak ; done
Alle Dateien im Ordner werden dann von xyz.txt nach xyz.txt.bak kopiert, wer anstelle des kopieren die Daten verschieben will ersetzt im script einfach „cp“ mit „mv“
Wer in einem Verzeichnis nur bestimmte Dateitypen z.B. *.html sichern mag macht dies dann so:
for i in *.html; do cp $i $i.bak ; done
somit werden an alle *.html Dateien im Ordner nach *.html.bak gesichert
Das gleiche geht mit jedem beliebigen Dateityp ^^
Viel spaß! Hoffe es hilft dem einem oder anderen :)
5 comments on “In der Shell schnell mal alle Dateien im Verzeichnis nach *.bak sichern”
Wozu ${i%*}.bak? ${i}.bak tut’s doch auch :)
Gruß,
Marcel.
Der Adminblogger hat recht^^ … mh ich glaube ich hab vorher zu lange daran rumgefuscht und das war mein Ergebnis :)
Aber Danke! Ich werde es gleich mal ändern!
Cooler Tipp – aber was machst Du mit Dateien, die keinen Suffix haben?
hmm.. ich mach sowas normal mit find -exec