পরিষেবা হিসাবে কাজ করতে কীভাবে বিদ্যমান অ্যাপলস্ক্রিপ্ট ফাইল তৈরি করবেন?


11

আমি একটি অ্যাপলস্ক্রিপ্ট তৈরি করেছি, এটি আমার হার্ড ড্রাইভের একটি নির্দিষ্ট ফোল্ডারে ফাইল হিসাবে সংরক্ষণ করেছি। এখন আমি এটিতে একটি শর্টকাট বরাদ্দ করতে চাই এবং দেখে মনে হচ্ছে যে আমাকে অটোমেটরের মাধ্যমে কোনও পরিষেবা তৈরি করতে হবে, তবে Run AppleScriptজিজ্ঞাসীরা আমাকে কোডটি ভিতরে রাখতে বলেছেন, যখন আমি ইতিমধ্যে বিদ্যমান .এসসিপি ফাইলটি সম্পাদন করতে চাই। কিভাবে যে কি?

উত্তর:


9

হ্যাঁ, অটোমেটর এখানে সেরা বিকল্প। পরিষেবা তৈরি করতে এই পদক্ষেপগুলি অনুসরণ করুন:

  1. অটোমেটর খুলুন এবং পরিষেবা নির্বাচন করুন:

    এখানে চিত্র বর্ণনা লিখুন

  2. 'অ্যাপসক্রিপ্ট' অনুসন্ধান করুন এবং ক্রিয়াটি ডান ফলকে টানুন:

    এখানে চিত্র বর্ণনা লিখুন

  3. এমন পরিবর্তন Service receives selected textকরুন Service receives no inputযাতে এটি সর্বদা পরিষেবাদি মেনুতে উপস্থিত হয়:

    এখানে চিত্র বর্ণনা লিখুন

  4. এর সাথে প্রতিস্থাপন করুন (* Your script goes here *):

    do shell script "/usr/bin/osascript /path/to/your/script.scpt"

    আপনি যদি আপনার বিদ্যমান .scptফাইলটি কার্যকর করতে চান । নোট করুন যে ওসাস্ক্রিপ্ট কোনও ডায়ালগ উইন্ডো প্রদর্শন করার মতো ব্যবহারকারীর ইন্টারঅ্যাকশন পরিচালনা করতে পারে না :

    এখানে চিত্র বর্ণনা লিখুন

    এই সীমাবদ্ধতা অতিক্রম করতে হয় হয় এই কর্মচালিত ব্যবহার করুন বা কেবল (* Your script goes here *)আপনার স্ক্রিপ্টের বিষয়বস্তু দিয়ে প্রতিস্থাপন করুন।

  5. এটি সংরক্ষণ করুন:

    এখানে চিত্র বর্ণনা লিখুন

  6. আপনি যদি চান, আপনি আপনার নতুন পরিষেবাতে একটি শর্টকাট বরাদ্দ করতে পারেন। পরিষেবাগুলি> ফাইন্ডারে পরিষেবাদি পছন্দগুলি (বা কোনও খোলা অ্যাপ্লিকেশন) নির্বাচন করুন:

    এখানে চিত্র বর্ণনা লিখুন

  7. একটি খুব সাধারণ শর্টকাট বরাদ্দ করুন:

    এখানে চিত্র বর্ণনা লিখুন

  8. আপনি আগের পদক্ষেপে অর্পিত শর্টকাটের মাধ্যমে এখন কোনও পরিষেবা থেকে আপনার পরিষেবা অ্যাক্সেসযোগ্য:

    এখানে চিত্র বর্ণনা লিখুন

আপনি যদি কখনই পরিষেবাটি উন্মুক্ত করতে চান তবে পরিষেবাটি ~/Library/Servicesমুছুন এবং ট্র্যাশটি খালি করুন:

এখানে চিত্র বর্ণনা লিখুন


আমি বলেছিলাম যে আমি বিদ্যমান স্ক্রিপ্ট ফাইলটি কার্যকর করতে চাই, এটি আবার অটোমেটারে না লিখতে চাই।
নাকিলন

আমি ভেবেছিলাম অনুলিপি / পেস্ট ঠিক আছে, তবে হ্যাঁ, আপনি ঠিক বলেছেন, এটি আপনার প্রশ্নে স্পষ্টভাবে বলা আছে। osascriptঅন্যান্য উত্তরে বর্ণিত হিসাবে ব্যবহার করুন ।
জৌমে

@ নাকিলন আমি কীভাবে osascriptআপনার .scptফাইল চালানোর জন্য অটোমেটারে ব্যবহার করতে পারি , একটি সীমাবদ্ধতা এবং দুটি কর্মক্ষেত্র ounds
জুমে

আমি সবেমাত্র এটি করেছি। এটা কাজ করেছে; তবে, স্ক্রিপ্টটি চালু করতে এখন 4 থেকে 5 সেকেন্ড সময় লাগে। (যখন কোডটি সরাসরি ওয়ার্কফ্লোতে সংরক্ষিত হয়েছিল, এটি প্রায় অবিলম্বে চালু হয়েছিল this) এর কারণ, বা কীভাবে এটি আরও দ্রুত চালু করা যায় তার কোনও ধারণা?
জ্যাক 18

1
@ জ্যাক ধন্যবাদ, আমি জানি না কেন osascriptআপনার স্ক্রিপ্টটি কার্যকর করতে 4 অতিরিক্ত সেকেন্ডের প্রয়োজন, তবে অটোমেটর দেরির কারণ নয় যা আমার উদ্বেগ ছিল। আপনি ডিবাগ করতে চাইতে পারেন osascript, opensourcehacker.com/2011/12/02/… এবং স্ট্যাকওভারফ্লো.com
জিজ্ঞাসা /

4

স্ক্রিপ্টে একটি on runযুক্তি যুক্ত করুন:

on run
    -- do whatever the script does
end run

তারপরে আপনি osascriptকমান্ডটি সহ অটোমেটর "রান শেল স্ক্রিপ্ট" ক্রিয়াটি ব্যবহার করতে পারেন :

osascript /path/to/script.scpt

osascriptশেল মধ্যে অ্যাপলস্ক্রিপ্ট চালায় এমন একটি কমান্ড। অ্যাপলস্ক্রিপ্ট সম্পাদকের বাইরে স্ক্রিপ্টটি সম্পাদন করার জন্য আপনাকে স্ক্রিপ্টের লাইনগুলির প্রয়োজন।


1
আপনাকে একটি সুস্পষ্ট রান হ্যান্ডলার অন্তর্ভুক্ত করার দরকার নেই। সমস্ত স্ক্রিপ্টগুলির একটি অন্তর্ভুক্ত রান হ্যান্ডলার রয়েছে। অটোমেটরের রান অ্যাপলস্ক্রিপ্ট অ্যাকশনে একটি সুস্পষ্ট রান হ্যান্ডলার অন্তর্ভুক্ত করার কারণটি থাকতে পারে কারণ অটোমেটর বিশেষ on run {input, arguments}ফর্মটি ব্যবহার করে , তবে এমনকি অটোমেটরে আপনি কেবল রান হ্যান্ডলারটি সরাতে পারেন।
ল্রি

1
@ ͏͏͏ আমি ভাবছি যে এই পিংটি আপনার কাছে আসে কিনা। সৃজনশীল নাম নির্বাচনের উপর কুডোস।
bmike

3

সম্ভবত আপনি এই পরিষেবাটি একবার দেখে নিতে চান , যা আপনাকে "যে কোনও স্ক্রিপ্ট থেকে ম্যাক ওএস এক্স পরিষেবা তৈরি করতে দেয়"।


1
আপনি এখানে কেবল একটি লিঙ্কের চেয়ে উত্তর সরবরাহ করতে পারেন
ব্যবহারকারী 151019

2

স্ক্রিপ্টগুলিতে শর্টকাট বরাদ্দ করার জন্য আমি অটোমেটর পরিষেবাগুলি তৈরি করার পরামর্শ দেব না। 10.7 এবং 10.8 এ একটি বাগ রয়েছে যেখানে অটোমেটর পরিষেবাদির জন্য কীবোর্ড শর্টকাটগুলি আপনি মেনু বার থেকে পরিষেবাদি মেনুটিতে না যাওয়া পর্যন্ত সর্বদা কাজ করে না। পরিষেবাগুলি চালুর আগে তুলনামূলকভাবে দীর্ঘ (সম্ভবত 0.1 থেকে 1 গুলি) বিলম্বও রয়েছে।

স্ক্রিপ্টগুলিতে কীবোর্ড শর্টকাট নির্ধারণের অন্যান্য উপায়গুলির জন্য এই উত্তরটি দেখুন । আমি নিজেই ফাস্টস্ক্রিপ্ট এবং আলফ্রেড ব্যবহার করি।


ঘোরাঘুরি করার প্রয়োজনটি আমি কখনই অনুভব করিনি? আপনি কী বলছেন তার আরও বিশদ আছে
মার্খুন্তে

1
আমি নিশ্চিত নই যে এটি সমস্ত ওএস এক্স ইনস্টলেশন বা সমস্ত পরিষেবাগুলিকে প্রভাবিত করে কিনা, তবে আমি এটি বিভিন্ন প্রতিষ্ঠানে একাধিকবার দৌড়েছি এবং এটি এখানে এবং সুপার ব্যবহারকারীর দ্বারা উল্লেখ করেছে। মাঝেমধ্যে সমস্ত অটোমেটর পরিষেবাদির কীবোর্ড শর্টকাটগুলি কাজ করা বন্ধ করে দেয় (বা আপনি তাদের টিপলে কিছুই হয় না) তবে আপনি মেনু বার থেকে পরিষেবাদি মেনুতে ঘোরাফেরা করলে, বা যদি আপনি উদাহরণস্বরূপ মাউসের সাহায্যে একটি পরিষেবা নির্বাচন করেন তবে তারা আবার কাজ শুরু করে।
Lri

2

আপনি এটির মতো একটি সাধারণ স্বয়ংক্রিয় পরিষেবা সহ বিদ্যমান স্ক্রিপ্টটি চালাতে পারেন। এবং আপনার শর্টকাটটি সাধারণ হিসাবে কীবোর্ডের শর্ট কাটগুলি থেকে নির্ধারণ করুন। কেবল মনে রাখবেন কিছু অ্যাপ্লিকেশন শর্টকাট তুলে নেওয়ার আগে পুনরায় চালু করতে হবে।

উদাহরণ।

হেলো লিপি:

say "hello"

স্বয়ংক্রিয় পরিষেবা: এখানে চিত্র বর্ণনা লিখুন

যা এই উদাহরণে ব্যবহার করে:

  • কোনও ইনপুট নেই
  • কোন আবেদন।

অ্যাকশনটি একটি রান শেল স্ক্রিপ্ট কোডটি কেবল ইউনিক্স কমান্ড ওসাস্ক্রিপ্ট এবং ফাইলের পথ ব্যবহার করে। পাস ইনপুট হতে পারে stdn করতে বা যুক্তি

এটি স্ক্রিপ্টের জন্য বিশেষ কিছু করার দরকার নেই।

ওসাস্ক্রিপ্ট কমান্ডের আরও তথ্যের জন্য এর জন্য ম্যান পেজগুলি দেখুন । ম্যান পৃষ্ঠাটি অন্য একটি উদাহরণ দেয় যেখানে আপনি স্ক্রিপ্টে যুক্তিগুলি দিতে পারেন।


0

কোনও পরিষেবা বিকাশ করতে আপনার কিছু ধরণের সফ্টওয়্যার দরকার যা একটি পরিষেবা তৈরি করবে যেমন নিম্নলিখিতগুলির মধ্যে একটি:

  1. একটি। ওয়ার্কফ্লো তৈরি করতে অটোমেটার
  2. এই সার্ভিসটি একটি। সার্ভিস তৈরি করতে
  3. একটি। অ্যাপ তৈরি করতে এক্সকোড

উপরের সমস্ত ধরণের পরিষেবাগুলি প্যাকেজ are এগুলি সমস্ত ফোল্ডার যা একটি প্লাস্ট থাকে যা কোনও পরিষেবার বৈশিষ্ট্য নির্দিষ্ট করে।

এখানে আমি অটোমেটর ব্যবহার করে এমন একটি পরিষেবা তৈরি করেছি যা একটি বিদ্যমান .স্ক্রিপ্টকে কল করতে "অ্যাপলস্ক্রিপ্ট চালান" অটোমেটার ক্রিয়া ব্যবহার করে।

অটোমেটার পরিষেবা যা একটি বিদ্যমান অ্যাপলস্ক্রিপ্ট কল করে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.