Setiap kali saya ingin menjalankan applescript, editor akan muncul.
Apakah ada cara untuk menjalankannya secara langsung?
macos
applescript
OscarRyz
sumber
sumber
Saat menyimpan skrip, Anda dapat memilih "Aplikasi" dari dropdown Format File; maka Anda akan dapat menjalankannya, dan Anda masih dapat menyeretnya ke Editor Skrip untuk membuka skrip; atau Anda dapat memilih Jalankan Saja sehingga tidak akan menyimpan versi yang dapat diedit.
Atau, Anda dapat menggunakan
osascript
perintah di Terminal, baik sebagaiosascript /path/to/script
atauosascript -e "a short script here"
.sumber
Anda juga dapat menempatkan skrip di folder ~ / Library / Scripts / Finder / dan menjalankannya langsung dari menu Script.
sumber
Di bawah macOS High Sierra 10.13 tidak ada File / Simpan sebagai.
Anda harus menggunakan File / Ekspor / Format File: Aplikasi
sumber
Cara lain adalah dengan membuat Layanan di Automator yang menggunakan
osascript
perintah untuk menjalankan .scpt di Finder.(Saya tidak menggunakan Automator dalam bahasa Inggris sehingga kata-katanya mungkin tidak akurat)
Di kotak Jalankan AppleScript, masukkan kode berikut:
File> Simpan, dan beri nama seperti "Jalankan AppleScript"
Sekarang Anda dapat mengklik kanan file .scpt di Finder dan pilih "Run AppleScript" dan lihat skrip Anda dieksekusi.
Referensi: Sumber subroutine - AppleScript: Essential Sub-Routines
sumber
osascript
dan belum kode untuk menangani jika lebih dari satu file .scpt dipilih di Finder. 2. Sama sekali tidak perlu melalui rigmarole pengkodean seperti itu ketika baris kode berikut menggantikan semua yang Anda tambahkan ke tindakan Run AppleScript.do shell script "osascript " & quoted form of POSIX path of item 1 of input
Berikut adalah contoh minimal untuk mengganti semuanya dalam kode AppleScript Anda saat ini: paste.ee/p/XngKAif
blok pernyataan dapat diperluas denganelse
klausa yang menampilkan pesan bahwa file yang dipilih bukan file .scpt. Dengan begitu pengguna tidak bertanya-tanya mengapa tidak ada yang terjadi jika mereka tidak melihat mereka secara tidak sengaja memilih jenis file yang salah ketika layanan dijalankan.