ما يعادل دقيقة (س ، ص) في ابليسكريبت
-
27-10-2019 - |
سؤال
لقد حصلت على ابليسكريبت العمل الذي لديه كرر تبدو مثل هذا:
repeat with i from 1 to count windows of proc
....
end repeat
الآن أريد تغيير هذا إلى دقيقة (2 ، عدد نوافذ بروك)
كيف يمكنني كتابة هذا باستخدام ابليسكريبت بحتة?(الحل التي تنطوي على باش الخ.غير مقبولة ، والسؤال هو حقا حول كيفية القيام بذلك من ابليسكريبت)
المحلول
ليس هناك طريقة مدمجة للقيام بذلك.سيكون عليك كتابة الوظيفة بنفسك:
on min(x, y)
if x ≤ y then
return x
else
return y
end if
end min
...
repeat with i from 1 to min(2, count windows of proc)
...
end repeat
لاحظ أنه إذا كنت تريد استخدام min
داخل أ tell ...
أو using terms from ...
بلوك ، عليك أن تسميها my min(2, count windows of proc)
بحيث يعرف ابليسكريبت للبحث عن min
في البرنامج النصي ، وليس في الشروط من التطبيق أو ما لديك لك.
أيضا ، ملاحظة سريعة:وتسمى اللغة التي تعمل مع ابليسكريبت ، وليس أوساسكريبت.تسمى أداة سطر الأوامر للعمل معها osascript
لأنه يعمل مع أكثر عمومية فتح بنية البرمجة النصية.لغات أخرى (مثل جافا سكريبت) يمكن أن تكون مكونات أوسا ، ولكن واقعيا ، الى حد كبير الجميع يستخدم ابليسكريبت.