| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen   | 
	
	
	
		| Autor | 
		Nachricht | 
	
	
		vlad •->
  
 
  Anmeldedatum: 12.02.2002 Beiträge: 17
 
  | 
		
			
				 Verfasst am: 26.02.2002 - 17:22    Titel: Dateien komprimieren und dann kopieren | 
				     | 
			 
			
				
  | 
			 
			
				Hallo miteinander!
 
 
Ich möchte gern wissen, ob es möglich ist, die Dateien komprimieren und dann kopieren (oder beim Kopieren komprimieren). Im Fall, wenn ich es trotzdem nicht so verständlich erklärt, nehmen wir so mal an: 
 
 
Wir haben den Ordner A. Der enthält Dateien.	Die Dateien müssen sich später im komprimierten Zustand (d.h. in einer Datei wie z.B. im Windows wäre es dateiname.rar) im Ordner B befinden.
 
 
Gruß
 
 
Vlad | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Snow Administrator
  
  
  Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
  | 
		
			
				 Verfasst am: 26.02.2002 - 17:46    Titel: Dateien komprimieren und dann kopieren | 
				     | 
			 
			
				
  | 
			 
			
				Hallo Vlad,
 
 
dein Vorhaben dürfte mit Stuffit Deluxe kein Problem sein. Es ist gut per AppleScript automatisierbar.
 
Hier mal kurz der 'stuff'-Befehl aus Stuffit Deluxe 6.0.1:
 
 
stuff: adds items to an archive
 
	 stuff	a list of alias	-- item(s) to add to an archive
 
			into	reference	-- location within archive
 
			password	international text]	-- password with which to encrypt the files
 
			deleting	boolean]	-- deletes the original files after they are added to the archive
 
			replacing	boolean]	-- replaces any items with the same name
 
			compression level	maximum/fast/none]
 
			compress aliases	boolean]
 
	 Result:	 a list of reference	-- reference(s) to archive items added
 
 
Ich habe mir gerade das Befehlsverzeichnis der OS X-Version angesehen. Sieht gut aus! Dürfte also unter 9.x und X keine Probleme geben. _________________ Peter
 
-
 
Fischer-Bayern.de|Shadetreemicro.com
  Zuletzt bearbeitet von Snow am 22.02.2003 - 23:11, insgesamt einmal bearbeitet | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Snow Administrator
  
  
  Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
  | 
		
			
				 Verfasst am: 26.02.2002 - 21:26    Titel: Dateien komprimieren und dann kopieren | 
				     | 
			 
			
				
  | 
			 
			
				Hier mal ein kleines Beispielscript, damit du eine Vorstellung hast, wie's ungefähr ablaufen könnte. Das Skript ist natürlich noch lange nicht vollkommen aber als Anschauumgsmaterial tut's das schon:
 
 
set ArchivName to text returned of ¨
 
   (display dialog "Bitte einen Namen für das Archiv eingeben" default answer "" )
 
set ArchivName to ArchivName & ".sit"
 
 
set ArchivPfad to ((path to desktop as string) & "Kompresse:" & ArchivName)
 
 
tell application "Finder"
 
   set fileList to every item of (choose folder)
 
   set myStuff to {  }
 
   repeat with oneFile in fileList
 
      set the end of myStuff to oneFile as alias
 
   end repeat
 
   log myStuff
 
end tell
 
 
tell application "StuffIt Deluxe"
 
   make new archive with properties { location:file ArchivPfad }
 
   stuff myStuff into archive ArchivName compression level maximum
 
end tell
 
 
Stuffit Deluxe ist übrigens recordable, d.h. du kannst Skripts auch aufzeichnen. Oft bringt das mehr Informationen als das Dictionary allein. Hier ein Skript, das ich eben aufgezeichnet habe:
 
 
tell application "StuffIt Deluxe"
 
   activate
 
   make new archive with properties ¨
 
      { location:file "Macintosh HD:Desktop Folder:Kompresse:Archiv A.sit"  }
 
   stuff { alias "Macintosh HD:Desktop Folder:siegelmusic.de:BellaphonLogo.jpg", ¨
 
      alias "Macintosh HD:Desktop Folder:siegelmusic.de:Bellaphon_sm.jpg", ¨
 
      alias "Macintosh HD:Desktop Folder:siegelmusic.de:logosiegelmusic1.jpg", ¨
 
      alias "Macintosh HD:Desktop Folder:siegelmusic.de:peters.htm", ¨
 
      alias "Macintosh HD:Desktop Folder:siegelmusic.de:www.siegelmusic.de"  } ¨
 
      into archive "Archiv A.sit" compression level maximum
 
   close window "Archiv A.sit"
 
end tell
 
 
HTH _________________ Peter
 
-
 
Fischer-Bayern.de|Shadetreemicro.com
  Zuletzt bearbeitet von Snow am 22.02.2003 - 23:10, insgesamt einmal bearbeitet | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Busyman •-->
  
  
  Anmeldedatum: 16.09.2001 Beiträge: 64 Wohnort: Ostwestfalen
  | 
		
			
				 Verfasst am: 26.02.2002 - 21:37    Titel: Dateien komprimieren und dann kopieren | 
				     | 
			 
			
				
  | 
			 
			
				Hallo Snow,
 
 
da danke auch ich Dir für Deine Mühe, wollte schon länger mal ein Backup-Script mit StuffIt-Funktion bauen. Nun weiß ich, wie es geht :biggrin:
 
 
Und schon wieder vorm Skript Editor sitzend,
 
 
Busyman | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		vlad •->
  
 
  Anmeldedatum: 12.02.2002 Beiträge: 17
 
  | 
		
			
				 Verfasst am: 27.02.2002 - 11:48    Titel: Dateien komprimieren und dann kopieren | 
				     | 
			 
			
				
  | 
			 
			
				Hallo, Snow!
 
 
Danke für deine ausführliche Antwort! Es ist genau so viel Information drin, wie ich brauche.
 
 
Gruß 
 
 
Vlad     | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		pixpress •->
  
 
  Anmeldedatum: 23.03.2004 Beiträge: 6 Wohnort: Zwickau
  | 
		
			
				 Verfasst am: 26.03.2004 - 11:27    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				@ Snow
 
 
 	  | Zitat: | 	 		  set ArchivName to text returned of ¨ 
 
(display dialog "Bitte einen Namen für das Archiv eingeben" default answer "" ) 
 
set ArchivName to ArchivName & ".sit" 
 
 
set ArchivPfad to ((path to desktop as string) & "Kompresse:" & ArchivName) 
 
 
tell application "Finder" 
 
set fileList to every item of (choose folder) 
 
set myStuff to { } 
 
repeat with oneFile in fileList 
 
set the end of myStuff to oneFile as alias 
 
end repeat 
 
log myStuff 
 
end tell 
 
 
tell application "StuffIt Deluxe" 
 
make new archive with properties { location:file ArchivPfad } 
 
stuff myStuff into archive ArchivName compression level maximum 
 
end tell | 	  
 
 
Habe Dein kleines Skript mal ausprobiert, funzt ja prima,
 
aber wie muss ich es abändern um jedes File eines Ordners als einzelnes Archiv zu ZIPPEN?
 
 
Ciao
 
 
Rico | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Snow Administrator
  
  
  Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
  | 
		
			
				 Verfasst am: 04.04.2004 - 20:51    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Hallo Rico,
 
 
um jedes einzelne File zu stuffen, brauchst du eine zusätzliche Schleife, in der die Liste "myStuff" abgearbeitet wird. Diese Schleife muss sich innerhalb des Tell-Blocks befinden, der an Stuffit gerichtet ist.
 
Man muss dabei aber aufpassen, dass Stuffit eine Liste erwartet und keine einzelnen Dateireferenzen. Deshalb musst du jeweils eine Liste übergeben, die nur eine einzige Dateireferenz enthält. ich habe dazu die Einzelreferenz einfach zwischen zwei geschweifte Klammern gesetzt.
 
 
Also hier das geänderte Skript:
 
 
set ArchivName to text returned of ¬
 
   (display dialog "Bitte einen Namen für das Archiv eingeben" default answer "")
 
 
tell application "Finder"
 
   set fileList to every item of folder (choose folder)
 
end tell
 
 
tell application "StuffIt Deluxe"
 
   set tCount to 0
 
   repeat with einzelDatei in fileList
 
      set einzelDatei to einzelDatei as alias
 
      set tCount to tCount + 1
 
      set EinzelName to ArchivName & "-" & tCount & ".sit"
 
      (* Der Ordner "Kompresse" muss auf dem Schreibtisch existieren *)
 
      set ArchivPfad to ((path to desktop as string) & "Kompresse:" & EinzelName)
 
      make new archive with properties {location:file ArchivPfad}
 
      stuff {einzelDatei} into archive EinzelName compression level maximum
 
   end repeat
 
end tell
 
 
Jetzt könnte man natürlich noch die Sache mit dem Archivnamen änder. Ich habe hier einfach einen zuvor gewählten Namen genommen und dann entsprechend der Anzahl der Dateien durchnummeriert. _________________ Peter
 
-
 
Fischer-Bayern.de|Shadetreemicro.com | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Snow Administrator
  
  
  Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
  | 
		
			
				 Verfasst am: 04.04.2004 - 21:01    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Sorry Rico,
 
 
du wolltest die Dateien ja ZIPPEN.
 
 
Sieht so aus:
 
 
tell application "Finder"
 
   set fileList to every item of folder (choose folder)
 
end tell
 
 
tell application "StuffIt Deluxe"
 
   repeat with einzelDatei in fileList
 
      set einzelDatei to einzelDatei as alias
 
      (* Der Ordner "Kompresse" muss auf dem Schreibtisch existieren *)
 
      set ZipPfad to (path to desktop as string) & "Kompresse:"
 
      encode {einzelDatei} with zip into file ZipPfad
 
   end repeat
 
end tell _________________ Peter
 
-
 
Fischer-Bayern.de|Shadetreemicro.com | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		nz •->
  
 
  Anmeldedatum: 30.12.2004 Beiträge: 13
 
  | 
		
			
				 Verfasst am: 30.12.2004 - 15:31    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Hallo,
 
 
gibts eine möglichkeit Dateien ohne Stuffit dlx/dropstuff zu Stuff-en?
 
Ist stuffit engine AS-fähig? Gibt es überhaupt stuffit engine unter OSX? | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		nz •->
  
 
  Anmeldedatum: 30.12.2004 Beiträge: 13
 
  | 
		
			
				 Verfasst am: 04.01.2005 - 01:51    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Ja, das geht!     
 
 
Mit stuff und unstuff Befehlen unter Darwin über Terminal. 
 
Vorausgesetzt man hat Stuffit DLX oder Stuffit SDK installiert.
 
 
Die Commands lassen sich mit "Do shell Script" laufen. | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		 |