Top-Themen

Aktuelle Themen (A bis Z)

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

gelöst 7-zip -Pfad nicht korrekt angegeben in der Batch

Mitglied: two-ak-two

two-ak-two (Level 1) - Jetzt verbinden

26.12.2012, aktualisiert 29.12.2012, 4583 Aufrufe, 6 Kommentare

Guten Tag,

mein Nick ist two-ak-two.

System
Win7 Home Premium 64 bit
7-zip 9.25 64 bit

diese Batch habe ich durch lesen anderer Beiträge von hier und durch Tipps von mehreren Benutzer für mich übernommen. Danke dafür.
01.
set "AKTPFAD=%cd%" 
02.
for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a %cd%.7z 
Ich benutze diese Batch durch das Kontext Menü, der Verweiß ist zum SendTo Ordner und dort ist die gespeichert (kann mann auch wo anders speichern, denke ich). Mann könnte das auch nach CMD /C als Befehl ausführen, nur ich erkenne aus der Batch gar keinen Syntax und deswegen ist es für mich unmöglich. Wäre aber schön wenn mann den Befehl auch im command Schlüssel eingeben könnte.

Mein Problem ist: Das Archiv wird nicht im Ordner erstellt wo ich mich befinde sondern auf dem Desktop.

Das .tmp Archiv schon, dann wird es zum Desktop kopiert wo auch der Pfad ist der festgelegt wurde damit ich den Namen des Ordners für das Archiv übernehmen kann.

Frühere Batch test Versuche waren erfolgreich aber der Name des Ordners wurde nicht übernommen.
Im 7-zip Syntax finde ich, keine angaben dafür und so kam ich zu der nachfolgenden Doku.

Die Zusammenfassung von >Thomas Glöckler< Interne Befehle der CMD-Shell wurde auch gelesen, danke. Die Logik kann ich nicht zu meinem Vorteil einsetzen, ich vestehe das nur zum teil, als ganzes will es nicht in meine Zentrale. Bin nicht der jüngste, deswegen bestimmt

Mitglied: bastla
26.12.2012, aktualisiert um 18:06 Uhr
Hallo two-ak-two und willkommen im Forum!

Was soll denn eigentlich der Batch bewirken, was ist beim Aufruf im Explorer markiert?

Soferne es, wie es aussieht, um eine Liste von Ordnern ginge, solltest du jeden davon mit
01.
for %%x in (*) do if exist "%%~x\" echo Verarbeite %%x (Ordnername: "%%~nxx")
in die Variable "%%x" bekommen und könntest dann in weiterer Folge die passende "7-zip"-Anweisung dafür basteln ...

Grüße
bastla

[Edit] Prüfung auf Ordner vereinfacht [/Edit]
Bitte warten ..
Mitglied: two-ak-two
26.12.2012, aktualisiert um 18:20 Uhr
Zitat von bastla:
Hallo two-ak-two und willkommen im Forum!
Danke
Was soll denn eigentlich der Batch bewirken, was ist beim Aufruf im Explorer markiert?
der Batch führt folgendes aus:
im Ordner "Ordner1" sind verschiedene Dateien vorhanden. Dazu zählen Ordner, Text, Archiv usw Dateien.
Ich markiere eine davon und erstelle mit der Batch das Archiv mit dem Namen "Ordner1"
Das Archiv wird im falschen Pfad erstellt aber mit dem richtigen Namen, alle Dateien sind im Archiv gepackt wie gewünscht.
Soferne es, wie es aussieht, um eine Liste von Ordnern ginge, solltest du jeden davon mit
Es ist keine Liste von Ordnern.
01.
for %%x in (*) do if exist "%%~x\") echo Verarbeite %%x (Ordnername: "%%~nxx")
in die Variable "%%x" bekommen und könntest dann in weiterer Folge die passende "7-zip"-Anweisung
Das ist bestimmt gut, ich verstehe es allerdings nicht
dafür basteln ...
bin schon 6 Monate am basteln

Edit:
jetzt habe ich folgendes probiert hinzu gefügt
01.
xcopy %cd%.7z Paket
Es passiert folgendes:
Archiv "Ordner1.7z" wird vom Desktop in den Ordner "C:\%USER%\***\Desktop\Ordner1\Paket" kopiert (nicht das wahre und Konsole wartet auf Eingabe D - Datei oder V -Verzeichnis)

Grüße
bastla
Gruß zurück
Bitte warten ..
Mitglied: bastla
26.12.2012, aktualisiert um 18:56 Uhr
Hallo two-ak-two!
Es ist keine Liste von Ordnern.
Ich markiere eine davon
Dann sollte eigentlich
01.
for /f "delims=" %%i in ("%~1\..") do set "ParentPath=%%~fi" & set "ParentName=%%~nxi" 
02.
if not defined ParentName set "ParentName=Root" 
03.
for %%i in (%*) do "c:\Program Files\7-Zip\7z.exe" a "%ParentPath%\%ParentName%.7z" %%i
besser passen ...

Kurze Erklärung: Anhand der ersten übergebenen Datei / des ersten übergebenen Ordners (%1) wird Pfad und Name des Ordners ermittelt (siehe dazu "for /?", gegen Ende der Ausgabe), in welchem sich diese Datei / dieser Order befinden. Sollte dies ein "Root"-Ordner (etwa "D:\") sein, gibt es natürlich keinen Ordnernamen, sodass in Zeile 2 ein Name für diesen Fall festgelegt wird.

Zeile 3 sorgt dafür, dass auch mehrere Dateien / Ordner verarbeitet werden können, indem eine Schleife über alle Übergabeparameter (%* = alle Dateien / Ordner) läuft und jeweils die Datei / den Ordner in das gleiche Archiv packt.

Grüße
bastla
Bitte warten ..
Mitglied: two-ak-two
26.12.2012, aktualisiert 01.01.2013
hallo bastla,

mit dem Befehl wird alles aus dem "Ordner1" in ein Archiv gepackt und auf dem Desktop abgelegt und der Name des Archivs ist dann Desktop.7z (war so nicht gedacht).

Ich möchte gerne aus den Ordner, der gerade geöffnet ist, alle Dateien in ein Archiv packen, den Namen des Ordners übernehmen und das Archiv auch da erstellen. Nicht aber auf den Desktop.

Zitat von bastla:
Dann sollte eigentlich
01.
for /f "delims=" %%i in ("%~1\..") do set "ParentPath=%%~fi" & set 
02.
"ParentName=%%~nxi" 
03.
if not defined ParentName set "ParentName=Root" 
04.
for %%i in (%*) do "c:\Program Files\7-Zip\7z.exe" a "%ParentPath%\%ParentName%.7z" %%i
die Zeilen habe ich sonst nirgendwo gesehen, dabei war ich 6 Monate am suchen. Es wird der Absolute Pfad festgelegt, siehe SET Befehl. Offiziel gibt auch keine Lösung, nur bei der 7-zip 9.30 Alpha als switch und da funtioniert es noch nicht Perfekt (Danke @bastla)
1. Deine Batch packt alles, übenimmt den Namen Desktop und legt das Archiv auch dort ab.
wurde erklärt wieso und ist Normal wenn sich der Ordner1 auf dem Desktop befindet.

2.Meine Batch packt alles, übernimmt den Namen des Ordners und legt das Archiv auch auf dem Desktop ab.
kann mann besser lösen

Mir ist klar das mann für diese Aktion auch das 7-zip Kontext Menü benutzen sollte, möchte ich aber nicht.
Es geht auch ganz einfach mit dem Winrar Kontext Menü und einem selbst erstelltem Profil, möchte ich auch nicht.

Mit Batch und CMD ist es super, mann braucht nicht rumklicken, passwort vergeben, Archivart wählen, Archivgröße bestimmen usw.

Danke für deine Zeit

Gruß
two-ak-two
Bitte warten ..
Mitglied: bastla
27.12.2012, aktualisiert um 11:03 Uhr
Hallo two-ak-two!

Ich weiß zwar nicht, wie Du testest, aber wenn ich meine 3 Zeilen oben (unter W7Pro) als "C:\Users\bastla\AppData\Roaming\Microsoft\Windows\SendTo\Make7z.cmd" speichere, danach in einem Ordner "Ordner1" (Pfad zu diesem Ordner egal) eine Datei markiere und per "Senden an" an den Batch ("Make7z.cmd") übergebe, wird in diesem "Ordner1" eine "Ordner1.7z" erstellt und in dieses Archiv die markierte Datei gepackt - der Desktop ist dabei überhaupt nicht beteiligt.

Dass übrigens auch mehrere Dateien und/oder Ordner in einem Arbeitsgang verarbeitet werden können, ist nur eine zusätzliche Mögichkeit - es kann auch Datei für Datei einzeln auf diese Weise in das Archiv gepackt werden ...
[Edit] Solltest Du allerdings Deinen "Ordner1" auf dem Desktop liegen haben und eben diesen "Ordner1" an den Batch übergeben, ist es natürlich klar, dass dann ein Archiv "Desktop.7z" entsteht, in das der gesamte "Ordner1" gepackt wird. [/Edit]

Grüße
bastla
Bitte warten ..
Mitglied: two-ak-two
29.12.2012, aktualisiert 01.01.2013
hallo bastla,
Zitat von bastla:
Hallo two-ak-two!

Ich weiß zwar nicht, wie Du testest,
wie Du, ich teste mit allen verfügbaren Datei Formaten.
  • SendTo Make7z.cmd funktioniert und ein CMD Fenster reicht aus.
  • Verweiß zur Make7z.cmd aus dem Kontext Menü funktioniert nur mit einer Datei.
mehrere Dateien bedeuten mehrere CMD Fenster und Archiv wird manchmal korrekt gepackt, dann manchmal unvollständig.
Shell Erweiterung x64
01.
Windows Registry Editor Version 5.00 
02.
 
03.
[HKEY_CLASSES_ROOT\Folder\shell\Make7z] 
04.
@="°Make7z" 
05.
"Icon"="%ProgramFiles%\\7-Zip\\7zFM.exe,0" 
06.
 
07.
[HKEY_CLASSES_ROOT\Folder\shell\°7zip\command] 
08.
@="\"C:\\Users\\****\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\\Make7z.cmd\" %1"
aber wenn ich meine 3 Zeilen oben (unter W7Pro) als
"C:\Users\bastla\AppData\Roaming\Microsoft\Windows\SendTo\Make7z.cmd" speichere, danach in einem Ordner
"Ordner1" (Pfad zu diesem Ordner egal) eine Datei markiere und per "Senden an" an den Batch
("Make7z.cmd") übergebe, wird in diesem "Ordner1" eine "Ordner1.7z" erstellt und in dieses
Archiv die markierte Datei gepackt - der Desktop ist dabei überhaupt nicht beteiligt.
ja, das funktioniert auch soweit Perfekt, vorausgesetzt:
  • nur eine Datei wird markiert, das geht soweit bis mann alle Dateien durch hat. die werden auch in das Archiv gepackt, also das archiv wird Aktualisiert.
  • wenn mehrere markiert werden und es sind Windows sfx und cab Dateien oder entpackbare Installshield exen vorhanden wird die For schleife abgearbeitet mit Fehlern.
  • Fehler Merkmale "Error Datei ist schon vorhanden" Archiv ist unvollständig oder "Archiv ist existiert schon"
  • Wenn beim 7zip switches im Befehl eingebaut werden geht es in die Hose. Ordner1.7z wird gepackt der unvolständig ist und Ordner1.7z.tmp wird nicht verarbeitet. In dem ist dann der Rest des Archivs.
Verwendete 7-zip switches
01.
-mx0 -v100m -x

Dass übrigens auch mehrere Dateien und/oder Ordner in einem Arbeitsgang verarbeitet werden können, ist nur eine
zusätzliche Mögichkeit - es kann auch Datei für Datei einzeln auf diese Weise in das Archiv gepackt werden ...
[Edit] Solltest Du allerdings Deinen "Ordner1" auf dem Desktop liegen haben und eben diesen
"Ordner1"
an den Batch übergeben, ist es natürlich klar, dass dann ein Archiv "Desktop.7z"
entsteht, in das der gesamte "Ordner1" gepackt wird.[/Edit]
ja das stimmt und das hat mich Nerven gekostet bis Du es halt gepostet hast


Grüße
bastla
Gruß zurück


wie schon gesagt, die zwei Zeilen funtionieren Perfekt. Der Nachteil ist das halt alles korrekt in den übergeordnetem Pfad gepackt wird.
  • 1. Zeile ist von dir
  • 2. Zeile, keine Ahnung
  • switches werden verarbeitet
  • das wichtigste -es werden alle Dateien gnadenlos gepackt
Bester Batch mit Kompromiss [EDIT]durch die zusätlichen Zeilen ist es für mich Perfekt[/EDIT]
01.
@echo off 
02.
set "7zNAME=%CD%" 
03.
echo %CD% 
04.
FOR /d %%X in (7zNAME) do "c:\Program Files\7-Zip\7z.exe" a -mx0 -v100m -x!test.txt "%cd%".zip > test.txt && "c:\Program Files\7-Zip\7z.exe" t "%cd%.zip.*" >> test.txt 
05.
move "%cd%.zip.*" "%ParentPath%"
  • "Es werden alle Dateien gepackt, getestet und wieder in den Ursprungspfad verschoben, so wie gewünscht. Dabei werden nur die
.zip
Dateien mit Erweiterung berücksichtigt! Der Name Ordners kann auch z.B. so
Ordner1 Ordner1&Ordner1. Ordner1
benannt werden und das Archiv wird korrekt erstellt
Bitte warten ..
Ähnliche Inhalte
Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgbornSicherheit11 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Batch & Shell
7 zip Pfade mitsichern
gelöst Frage von Klaus20Batch & Shell3 Kommentare

Hallo liebe Administrator.de-Gemeinde! Ich hätte mal wieder eine Frage an Euch. Wie kann ich mit 7 zip den Pfad ...

Windows Tools

7-ZIP aktualisiert geänderte Dateien nicht immer

gelöst Frage von c20082005Windows Tools9 Kommentare

Hallo zusammen, wenn ich ein verschlüsselte .7z-Datei öffne, kann ich ja die darin enthaltenen Dateien per Doppelklick öffnen und ...

Batch & Shell

7-Zip Kommandozeilen-Version: Wie verschlüsseln und passwortsichern?

gelöst Frage von red-eyeBatch & Shell10 Kommentare

Hallo Administratoren! :-) Ich möchte gerne in einer Batch mittels 7-Zip-Kommandozeilenversion eine Ordnerstruktur mit ihren Dateien komprimieren und verschlüsseln ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Windows Server
NTFS Berechtigungen Ordnerstruktur
Frage von hukahu23489Windows Server11 Kommentare

Hallo, ich bin seit kurzem in einer neuen IT-Abteilung und bin über das Berechtigungskonzept des Unternehmens sehr schockiert. Ich ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...