Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Schleife für das Archivieren von Verzeichnissen mit Unrar-Rar (Shell)

Frage Entwicklung Batch & Shell

Mitglied: Lampux

Lampux (Level 1) - Jetzt verbinden

26.10.2010, aktualisiert 07:52 Uhr, 2953 Aufrufe, 3 Kommentare

Hallo zusammen,


ich habe bereits für das Entpacken eine Schleife geschrieben (in Shell): for f in *.rar;do unrar e -ad -o+ $f;done

Nun bräuchte ich für das Archivieren im Fomrat *.rar eine Schleife, die Ordnerstruktur sieht folgendermaßen aus:

In einem Verzeichnis test sind folgende Verzeichnisse z.B:

0015
Test0004
Baumfotos2010
KeineAhnung01
15

Diese Verzeichnisse sollten in *.rar Archive gepackt werden, also die Ausgabe sollte folgendes ausgeben:

0015.rar
Test0004.rar
Baumfotos2010.rar
KeineAhnung01.rar
15.rar

Die Parameter für das Packen von Rar-Archive sind: rar a [Ausgabedatei.rar] [~/Verzeichnis das hinzugefügt werden soll]

Könnt ihr mir viellecht eine Codelösung geben?

mfg Lampux
Mitglied: micneu
27.10.2010 um 09:48 Uhr
z.b. ich würde mir erstmal eine liste mit den verzeichnissen erstellen die ich sichern will (ist die bekannt oder nicht?)
ich gehe davon aus die struktur ist dünamisch bis auf bis auf das hauptverzeichnis.

bei zum testen:

/tmp
01.
find /tmp/* -type d > rar.txt          # erstellt mir eine text datei in meinem aktuellen verzeichnis mit den namen der verzeichnissen die in /tmp liegen.
diese kannst du jetzt mit einer for schleife abarbeiten

als beispiel so:

01.
#!/bin/bash 
02.
 
03.
### erstellt rar dateien aus den verzeichnissen 
04.
 
05.
DATEI=rar.txt 
06.
ZAEHLER=1 
07.
DEST=/tmp/ 
08.
for i in $(cat $DATEI); do 
09.
    echo $ZAEHLER $i 
10.
    echo rar a $i.rar $i 
11.
    ZAEHLER=$(($ZAEHLER+1)) 
12.
     
13.
done
ich lasse zum testen nur den befehl als echo ausgeben so kann ich sehen was er draus macht.
ich würde jetzt noch die ausgabe in eine art logdatei schreiben und so kann ich jeden tag sehen was gepackt wurde.
möchtest du noch ein anderes ziel verzeichnis haben so solltest du mit sed noch die path angaben anpassen.

das könnte man noch mit einbauen:

01.
sed -e "s/\/*.\///g;s/\///g" rar.txt
entfernt den path

also könnte man es so lösen

01.
#!/bin/bash 
02.
 
03.
### erstellt rar dateien aus den verzeichnissen 
04.
 
05.
DATEI=rar.txt 
06.
ZAEHLER=1 
07.
DEST=/backup/ 
08.
SOURCE=/tmp/* 
09.
 
10.
find $SOURCE -type d > rar.txt  
11.
 
12.
for i in $(cat $DATEI); do 
13.
    echo $ZAEHLER $i 
14.
    b=`echo $i | sed -e "s/\/*.\///g;s/\///g"` 
15.
    echo rar a $DEST$b.rar $i 
16.
    ZAEHLER=$(($ZAEHLER+1)) 
17.
     
18.
done
gruß michael
Bitte warten ..
Mitglied: micneu
29.10.2010 um 20:33 Uhr
und hast du schon getestet?

gruß michael
Bitte warten ..
Mitglied: micneu
20.04.2011 um 15:42 Uhr
Habe es nochmal etwas überarbeitet

01.
#!/bin/bash 
02.
 
03.
### erstellt rar dateien aus den verzeichnissen 
04.
 
05.
ZAEHLER=1 
06.
DEST=/tmp 
07.
SOURCE=/var/ 
08.
 
09.
for i in $(find "$SOURCE" -maxdepth 1 -type d); do 
10.
    echo $ZAEHLER $i 
11.
    b=`echo $i | sed -e "s/\///g"` 
12.
    echo rar a $DEST/$b.rar $i 
13.
    ZAEHLER=$(($ZAEHLER+1)) 
14.
done 
15.
 
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Ordner per Batch in RAR (1)

Frage von kampen zum Thema Batch & Shell ...

Batch & Shell
Batch: .rar-Pakete automatisch Ordner erstellen und verschieben (2)

Frage von BowserMD zum Thema Batch & Shell ...

Ubuntu
gelöst Verzeichnisse bestehen nur noch aus "???" (2)

Frage von D1Ck3n zum Thema Ubuntu ...

Netzwerke
Buchhalterische Belege nur noch gescannt in der EDV archivieren (10)

Frage von thomasreischer zum Thema Netzwerke ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Microsoft Office
Office Druck fehler (18)

Frage von DaistwasimBusch zum Thema Microsoft Office ...

Windows Server
Zertifikat am DC erneuern funktioniert nicht (15)

Frage von takvorian zum Thema Windows Server ...