mój poniższy kod zwraca błąd
tell current application
set b to "Tuesday 12 April 2016 at 18:06:10"
date b
end tell
Gdybym napisał ciąg zdefiniowany w b bezpośrednio przed datą, działa, ale mój ciąg daty jest zdefiniowany przez niektóre zmienne, więc b jest tylko przykładem tego ciągu, jak to wygląda.
Ale dlaczego AppleScript zwraca błąd tylko dlatego, że ciąg jest zdefiniowany w zmiennej?
applescript
cześć wszystkim
źródło
źródło
do shell script date ...
gdzie...
właściwie sformatowane są danedate
polecenia.Odpowiedzi:
Próbować:
Inne podejście:
źródło
Twoja składnia jest nieprawidłowa.
Po pierwsze, nie musisz niczego „mówić”. Pozostaw „Tell” i „End Tell” wyłączone. Daty nie są specyficzne dla żadnej konkretnej aplikacji, więc nie musisz „mówić”. To może być cały problem.
Po drugie, jeśli zrobisz coś takiego:
Otrzymasz taki wynik (niezupełnie taki, ponieważ jest on specyficzny dla twoich preferencji daty i godziny):
data „Wtorek, 12 kwietnia 2016 o 10:39:44”
To jest „wynik” powyższego skryptu jednowierszowego. Zwróć uwagę na przecinki.
Twój skrypt, w którym ustawiłeś „b”, nie zawiera przecinków i może być tam, gdzie idzie źle. Myślę, że jeśli uruchomisz skrypt jednowierszowy, jak pokazałem powyżej, zobaczysz odpowiednią składnię. Gdy go zobaczysz, możesz zmienić ciąg w wierszu, w którym ustawiłeś b, aby dopasować składnię, jakiej oczekuje system. Jeśli korzystasz z właściwej składni (tzn. Dopasowując to, co otrzymujesz, gdy pytasz o bieżącą datę), problem polega wyłącznie na tym, że umieściłeś polecenia daty w bloku „powiedz”, a aplikacja, o której mówisz „nie rozumie, jak to zrobić. Pozostaw opakowanie „powiedz” wyłączone. Zrób swoje randkowe rzeczy poza tym. Twoja data „b” będzie nadal działać później w skrypcie, w bloku tell. Ale musisz wykonać swoją randkę poza blokiem Tell.
źródło