• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

Write ohne Variablen

Bomberzocker

Auralia
Registriert
08.06.08
Beiträge
202
Wenn ich einen write befehl gebe und in den Pfad variablen einsetze funktioniert das nicht. Ist das allgemein so oder nur bei mir?

so funktioniert es:
set RefNum to (open for access file ¬
"Macintosh hd:Benedikt:Users:Desktop:MeineDatei.txt" with write permission)
set Datei_Ende to (get eof RefNum)
set MeinText to ¬
"Das ist mein Text zum Testen." & return & ¬
"Es könnte durchaus noch mehr sein."
if Datei_Ende = 0 then
set DateiText to MeinText
else
set DateiText to return & MeinText
end if
try
write DateiText to RefNum ¬
starting at Datei_Ende + 1
close access RefNum
on error
close access RefNum
end try

so nicht:
set username to do shell script "whoami"
set RefNum to (open for access file ¬
"Macintosh hd:" & username & ":Users:Desktop:MeineDatei.txt" with write permission)
set Datei_Ende to (get eof RefNum)
set MeinText to ¬
"Das ist mein Text zum Testen." & return & ¬
"Es könnte durchaus noch mehr sein."
if Datei_Ende = 0 then
set DateiText to MeinText
else
set DateiText to return & MeinText
end if
try
write DateiText to RefNum ¬
starting at Datei_Ende + 1
close access RefNum
on error
close access RefNum
end try
 
Du musst da zusammengehöriges Klammern. Ich würde es so machen:

set RefNum to (open for access file ((path to desktop folder as text) & "MeineDatei.txt") with write permission)
 
also variablen gehen da nicht oder hab ich was falsch verstanden? Mti den klammern funktioniert das auch nicht.
Ich wollte auch nicht nur den username mit ner variable verändern sondern evtl. noch mehr. Deswegen hat das nicht so viel geholfen.
 
Das müsste klappen:
Code:
set RefNum to (open for access file ("Macintosh HD:Users:" & username & ":Desktop:MeineDatei.txt") with write permission)

Hart kodierte Laufwerksnamen sind aber selten gut, besser wäre z. B. path to startup disk.