• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Hard Drive

the x-master

Riesenboiken
Registriert
29.01.06
Beiträge
290
Hallo Leute, :)
also ich möchte ein Script schreiben und es fehlen mir ein paar Fetzen...
Wie kann ich in AS dem Finder sagen, dass wenn die Speicherkapazität einer Festplatte nur noch (z.b. 20GB) beträgt, er dann (z.b. den Müll entleert).

Schon mal Danke :-D


X.
 
Zuletzt bearbeitet:

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
Hallo mein Freund ;)

wie geht's voran?

Hier die Lösung für die heutige Quizfrage:

Code:
set capacitylimit to 20 * 1024 * 1024 * 1024
tell application "Finder"
	set myvolumes to (disks whose local volume is true)
	repeat with thevolume in myvolumes
		if free space of thevolume < capacitylimit then
			display dialog "Volume " & ((name of thevolume) as string) & " hat weniger als 20 GB Restkapazität - möchtest du jetzt den Papierkorb leeren?" buttons {"Ja", "Nö"}
			if button returned of result = "Ja" then empty trash
		end if
	end repeat
end tell

Das Skript ist natürlich schwachsinn, denn wir wollen den Papierkorb ja nicht jedesmal leeren - aber du machst da schon was draus ;)

Grüße,

Daisy
 

the x-master

Riesenboiken
Registriert
29.01.06
Beiträge
290
vielen Dank Daisy,
kannst du mir auch sagen, wie man ihm nur ein bestimmtes volume gibt?

Das geht leider nich...

Code:
set capacitylimit to 20 * 1024 * 1024 * 1024
tell application "Finder"
	set myvolumes to (disks whose local volume is "HD")
	repeat with thevolume in myvolumes
		if free space of thevolume < capacitylimit then
			display dialog "Volume " & ((name of thevolume) as string) & " hat weniger als 20 GB Restkapazität - möchtest du jetzt den Papierkorb leeren?" buttons {"Ja", "Nö"}
			if button returned of result = "Ja" then empty trash
		end if
	end repeat
end tell
Das Skript ist natürlich schwachsinn, denn wir wollen den Papierkorb ja nicht jedesmal leeren - aber du machst da schon was draus

Na klar, das war ja auch nur ein kleines Beispiel...;)

wie geht's voran?
Yoahhr es geht voran...
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
the x-master schrieb:
kannst du mir auch sagen, wie man ihm nur ein bestimmtes volume gibt?
Das geht leider nich...

War dir Frage jetzt ernst gemeint???? Doch eher nicht, oder ...
set capacitylimit to ...
tell app "Finder"
if (free space of volume "Macintosh HD" < capacitylimit) then empty trash
if (free space of startup volume < capacitylimit) then empty trash
end tell

;) Daisy
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
the x-master schrieb:
Das geht leider nich...

Code:
(disks whose local volume is "HD")

LOL - jetzt seh' ich das erst ;)

dat kann ja nicht gehen ...

Zur Erläuterung:
'local volume' ist eine Eigenschaft von 'disk', die wahr (=true) oder falsch (=false) sein kann - damit habe ich im obigen Skriptbeispiel einfach nur eine Liste aller lokalen Volumes erstellt. Um das auf ein Volume einzugrenzen (was dann auch Blödsinn wäre, denn es geht ja einfacher) hättest du sowas schreiben müssen:

... to (disks whose name is "HD")

Das erstellt dann eine Liste mit genau einer Disk*, nämlich der, die 'HD' heisst.
*sofern du nicht mehrere disks mit dem Namen 'HD' hast.

Grüße,

Daisy
 

the x-master

Riesenboiken
Registriert
29.01.06
Beiträge
290
Danke, das war die Antwort, die ich hören wollte... :)

X.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: 1 Person