কমান্ড লাইন কৌশলটি করবে (কিছু কনফিগারেশন সহ)। আপনার গুগল অ্যাকাউন্ট প্রমাণীকরণ ব্যবহার করার জন্য আপনাকে এটি সেট আপ করতে হবে (আমি লক্ষ্য করেছি আপনি প্রশ্নটি "gmail" দিয়ে ট্যাগ করেছেন যাতে আমি মনে করি যে এটি আপনার সরবরাহকারী)।
কীভাবে এটি সেট আপ করবেন তার বিশদ এই সাইটে রয়েছে। আপনি যদি আপনার অ্যাকাউন্টের সাথে দ্বি-পদক্ষেপের প্রমাণীকরণ ব্যবহার করেন তবে কেবল কমান্ড লাইনের জন্য একটি অ্যাপ্লিকেশন পাসওয়ার্ড তৈরি করুন এবং এসএএসএল পাসওয়ার্ড যুক্ত করার সময় সেই টোকেনটি ব্যবহার করুন।
এই সেটআপটি ভাল কাজ করে তবে সংযুক্তিগুলি পরিচালনা করবে না। আপনার যদি কোনও ফাইল প্রেরণের দরকার হয় তবে মেল জিইউআই ব্যবহার করে আপনার সম্ভবত আরও সহজ সময় থাকবে।
তবে, আপনার সমস্যাটি হ'ল আপনি কোনও বার্তা প্রেরণের জন্য কোনও প্রোগ্রাম খুলতে চান না, তাই না? কারণ এর জন্য আপনার টার্মিনাল খোলা থাকতে হবে, বা যখন আপনাকে প্রেরণের দরকার হবে তখন টার্মিনাল খুলতে হবে। তবে অ্যাপলস্রিপ্ট একসাথে নক করা মোটামুটি সহজ হবে যা আপনাকে গন্তব্য ঠিকানা, বিষয় এবং ইমেলের পাঠ্যের জন্য অনুরোধ করবে, তারপরে সরাসরি শেলটি থেকে প্রস্থান করুন এবং প্রস্থান করুন। এটিকে আপনার ব্যবহারকারীর স্ক্রিপ্টস ফোল্ডারে ফেলে দিন এবং তা নিশ্চিত করুন যে দ্রুত অ্যাক্সেসের জন্য ম্যাকু বারে স্ক্রিপ্টগুলি প্রদর্শন করতে আপনার ম্যাকটি কনফিগার করা আছে।
দ্বিতীয় সম্পাদনা: অ্যাপলাস্ক্রিপ্টটি আরও কিছু দক্ষতার সাথে কাজ করতে আপডেট হয়েছে; আপনার বাড়ির ডিরেক্টরিতে কোনও অস্থায়ী ফাইলে বার্তাটি বডি লিখতে কোডটি এখান থেকে ব্যবহার করে, তারপরে কেবল ইমেল বার্তায় ফাইলের সামগ্রীগুলি পড়তে বিড়ালটিকে ব্যবহার করে এবং শেষ পর্যন্ত টেম্প ফাইলটি মুছে দেয়। আমি এটি পরীক্ষা করে দেখেছি এবং এটি এমন অক্ষরগুলির সাথেও ভাল কাজ করে যা মূল স্ক্রিপ্ট দ্বারা ভুলভাবে ছড়িয়ে পড়েছিল।
try
display dialog "Send email to:" default answer "email@domain.com"
set theEmail to (text returned of result)
if theEmail is "email@domain.com" then error "No recipient specified!"
display dialog "Email subject:" default answer "Subject"
set theSubject to (text returned of result)
if theEmail is "Subject" then error "No subject specified!"
display dialog "Message:" default answer ¬
"Enter message text" & return & return & return & return
set theBody to (text returned of result)
set this_file to (((path to home folder) as text) & "message.tmp")
my write_to_file(theBody, this_file, true)
do shell script "cd ~/; cat message.tmp | mail -s \"" & theSubject & "\" " & theEmail & "; rm message.tmp"
on error theError
display dialog theError buttons {"Quit"} default button 1
end try
-- this subroutine saves input as a text file
on write_to_file(this_data, target_file, append_data) -- (string, file path as string, boolean)
try
set the target_file to the target_file as text
set the open_target_file to ¬
open for access file target_file with write permission
if append_data is false then ¬
set eof of the open_target_file to 0
write this_data to the open_target_file starting at eof
close access the open_target_file
return true
on error
try
close access file target_file
end try
return false
end try
end write_to_file