ইউনিক্স "মেল" এ "থেকে:" ঠিকানাটি পরিবর্তন করুন


90

থেকে mail TO_ADDRকোনও ইমেলের ফলাফল ব্যবহার করে ইউনিক্স কমান্ড লাইন থেকে একটি বার্তা প্রেরণ $USER@$HOSTNAME। Fromোকানো "থেকে:" ঠিকানাটি পরিবর্তন করার কোনও উপায় আছে কি mail?

রেকর্ডের জন্য, আমি উবুন্টুতে জিএনইউ মেলুটিলসটি 1.1 / 1.2 ব্যবহার করছি (তবে আমি ফেডোরা এবং আরএইচইএল এর সাথে একই আচরণ দেখেছি)।

[সম্পাদনা]

$ মেল -s পরীক্ষা chris@example.org                                                                  
সিসি: 
থেকে: foo@bar.org

পরীক্ষামূলক
।

উৎপাদনের

বিষয়: পরীক্ষা
প্রতি: <chris@example.org>
এক্স-মেলার: মেইল ​​(জিএনইউ মেলুটিলস ১.১)
বার্তা-আইডি: <E1KdTJj-00025z-RK @ লোকালহোস্ট>
থেকে: <ক্রিস @ লোকালহোস্ট>
তারিখ: বুধ, 10 সেপ্টেম্বর 2008 13:17:23 -0400

থেকে: foo@bar.org

পরীক্ষামূলক

"থেকে: foo@bar.org" লাইন বার্তা শব্দের অংশ, শিরোনামের অংশ নয়।


4
এটি ইউনিক্সের কী স্বাদ? এবং কোন মেল সংস্করণ? কোথায় কাজ করে না তা কেবল জানতে।
ভিঙ্কো ভার্সালভিক

উম, প্রায় সব। মেলেক্স বা বার্কলে মেল যে কেউ ব্যবহার করছে সে সেভাবে এটি দেখতে পাবে। আপনি যদি শিরোনামকে প্রভাবিত করতে চান তবে পুরো শিরোনামটি লিখুন এবং সরাসরি rmail বা সেন্ডমেল দিয়ে প্রেরণ করুন।
থমাস কামমেয়ার

ওহ, তবে, দুঃখিত, আমি জেন্টু চালাচ্ছি।
থমাস কামমেয়ার

রেকর্ডের জন্য, আমি মেলেক্স ব্যবহার করছি এবং ক্রিস কাজটি উদাহরণ দেয়। বা আপনি কি বোঝাতে চেয়েছিলেন?
ভিঙ্কো ভার্সালোভিক

ভিঙ্কো, ইউএন * এক্স এর কোন সংস্করণ আপনি চালাচ্ছেন? আপনি কি "কাজগুলি" দ্বারা বোঝাচ্ছেন যে আপনি তার ফলাফল পেয়েছেন বা আপনি তার পছন্দসই আচরণ পেয়েছেন যা তার প্রয়োজনটিকে মোকাবেলা করবে? এটি আপনার প্ল্যাটফর্মে বার্তা জমা দেওয়ার কাজ এবং ক্লায়েন্ট কোনও ফাঁকা রেখা যুক্ত করে কিনা তা কিছুটা ডিগ্রি নির্ভর করে
থমাস কামমেয়ার

উত্তর:


110

আমার মেলের সংস্করণে (ডেবিয়ান লিনাক্স 4.0.০) উত্স / উত্তর ঠিকানাগুলি নিয়ন্ত্রণ করার জন্য নিম্নলিখিত বিকল্পগুলি কাজ করে

  • -a সুইচ, অতিরিক্ত হেডার জন্য আবেদন করতে, থেকে সরবরাহ: কমান্ড লাইন যে বহির্গামী মেইল হেডার যোগ করা হবে হেডার
  • $ REPLYTO এনভায়রনমেন্ট ভেরিয়েবল নির্ধারণ একটি উত্তর দেওয়ার ঠিকানা: হেডার

সুতরাং নিম্নলিখিত ক্রম

export REPLYTO=cms-replies@example.com
mail -aFrom:cms-sends@example.com -s 'Testing'

ফলাফলটি, আমার মেল ক্লায়েন্টগুলিতে, cms-sends@example.com এর একটি মেল, যা কোনও উত্তর cms-replies@example.com এ ডিফল্ট হবে is

এনবি: ম্যাক ওএস ব্যবহারকারী: আপনার কাছে নেই, তবে আপনার কাছে $ রিপ্লাইটো রয়েছে

এনবি (২): সেন্টোস ব্যবহারকারী, অনেক কমেন্টার যোগ করেছেন যে আপনার ব্যবহার করা উচিত -rনয়-a

এনবি (3): এই উত্তরটি কমপক্ষে দশ বছরের পুরানো (1), আপনি গুগল থেকে আসার সময় দয়া করে এটি মনে রাখবেন।


আমি তা নিশ্চিত করার জন্য এখানে আবার এটি পরীক্ষা করেছি এবং এটি আমার পক্ষে ভাল কাজ করে। সমস্ত মেইল ​​ক্লায়েন্টরা রিপ্লাই-টু দিয়ে ভাল কাজ করে না, তবে আমি ভাবতাম যে এটি এতক্ষণে সমাধান হওয়া সমস্যা। REPLYTO env ভেরিয়েবলটি ম্যান পেজে উল্লেখ করা হয়েছে, অন্যান্য ইউনিক্স মেলেরা এটি সম্মান করে, ইমাস ইত্যাদি Still তবুও, আমার ধারণা আপনার কোনও সমাধান রয়েছে।
সেমি

আমি মনে করি না এটি মেল ক্লায়েন্ট ... আমি কাঁচা বার্তার পাঠ্যে উত্তর-শিরোনামটি দেখতে পাচ্ছি না। তবে, হ্যাঁ, -এই যথেষ্ট।
ক্রিস কনওয়ে

4
না, তা হয় না। তবে: "লাইসেন্সের কারণে পুরো জিএনইউ মেলুটিলেস ম্যানুয়ালটি দেবিয়ান সিস্টেমে উপলব্ধ নেই।" -আরপ্লাই-টু: ... কাজ করে।
ক্রিস কনওয়ে


4
CentOS এ mail -aবিকল্পটির অর্থ "সংযুক্তি"। আমার -rমতো ব্যবহার করা দরকারmail -r from@whatever.com
সমতুল্য

42

Centos 5.3 এ আমি করতে সক্ষম:

mail -s "Subject" user@address.com -- -f from@address.com < body

ডাবল ড্যাশ মেলটি -f আর্গুমেন্টকে পার্স করা থেকে বিরত করে এবং নিজেই এটি মেইল ​​পাঠাতে প্রেরণ করে।


4
কাজ করে না. 3 ঠিকানায় এখন ঠিকানা যুক্ত করা। ঠিকানাটি, এফ ঠিকানা এবং লোকালডোমেন
shorif2000

4
আপনি কী সাহায্য করতে পারেন, এটি কাজ করতে ব্যবহৃত হয়েছিল - তবে, সাম্প্রতিক আপডেট হওয়ার পরে এটি আর কাজ করে না, এটি কেবলমাত্র -f @ হোস্টনেমে ইমেল প্রেরণের চেষ্টা করে
উইল

4
CentOS 6.3 এ কাজ করে না। -আর পতাকা ব্যবহার করে নীচে @ উবুন্টু-ফ্যানবয় উত্তর চেষ্টা করুন।
স্কাইটেকার

26

জিএনইউ মেলুটিলসের 'মেল' কমান্ড আপনাকে এটি করতে দেয় না (সহজেই কমপক্ষে)। তবে আপনি যদি 'উত্তরাধিকারী-মেলেক্স' ইনস্টল করেন তবে এর মেল কমান্ড (মেইলএক্স) এর ক্ষেত্রে ক্ষেত্র থেকে ডিফল্ট '$ ব্যবহারকারী @ $ HOSTNAME' কে ওভাররাইড করার জন্য '-r' বিকল্প রয়েছে।

echo "Hello there" | mail -s "testing" -r sender@company.com recipient@company.com

'মেলেক্স' এর জন্য কাজ করে তবে 'মেল' নয়।

s এলএস-এল / ইউএসআর / বিন / মেল
lrwxrwxrwx 1 টি মূল রুট 22 2010-12-23 08:33 / ইউএসআর / বিন / মেইল ​​-> / ইত্যাদি / বিকল্প / মেল
s এলএস-এল / ইত্যাদি / বিকল্প / মেল
lrwxrwxrwx 1 টি মূল রুট 23 2010-12-23 08:33 / ইত্যাদি / বিকল্পগুলি / মেল -> / ইউএসআর / বিন / উত্তরাধিকারী-মেলেক্স

4
সম্ভবত এটি জেনে রাখা কার্যকর হতে পারে যে mailউবুন্টু 14.04 এলটিএসে -rবিকল্পটি সমর্থন করে জিএনইউ মেলুটিলস কমান্ডটি প্রিনস্টল করা হয়েছে , যাতে আপনি সহজেই প্রেরকের ঠিকানা সেট করতে পারেন।
জের্লোস

আমি ডেবিয়ান 9.11 এ পরীক্ষা করেছি এবং বিকল্পটিও কার্যকর works
ফেদির আরওয়াইকটিক

14
mail -s "$(echo -e "This is the subject\nFrom: Paula <johny@paula.com>\n
Reply-to: 1232564@yourserver.com\nContent-Type: text/html\n")" 
milas.josh@gmail.com < htmlFileMessage.txt

উপরেরটি আমার সমাধান .... কোনও অতিরিক্ত শিরোনাম উত্তর দেওয়ার ঠিক আগে এবং এর আগে যুক্ত করা যেতে পারে ... কেবলমাত্র আপনার শিরোনামগুলি যুক্ত করার আগে তাদের সিনট্যাক্সটি জানেন কিনা তা নিশ্চিত করুন .... এটি আমার পক্ষে পুরোপুরি কাজ করেছিল।


4
এটি আপনার উদাহরণ দিয়ে আমার জন্য কাজ করছে ..। আমি যখন ইমেল ঠিকানা বিষয় ইত্যাদি পরিবর্তন করি তখন সমস্ত শিরোনামই অস্বীকার করা হয়?
বিএসএমও

7

এছাড়াও -F optionপ্রেরকের নাম নির্দিষ্ট করতে এটি ব্যবহার করা ভাল ।

এটার মতো কিছু:

mail -s "$SUBJECT" $MAILTO -- -F $MAILFROM -f ${MAILFROM}@somedomain.com

অথবা কেবল উপলভ্য বিকল্পগুলি দেখুন: http://www.courier-mta.org/sendmail.html


5

নাম এবং ঠিকানা থেকে এই জাতীয় কিছু ব্যবহার করে উভয়ই সেট করা সম্ভব:

 echo test | mail -s "test" example@example.com -- -F'Some Name<example2@example.com>' -t

কোনও কারণে পাসিং -F'Some Name'এবং -fexample2@example.comকাজ করে না, তবে প্রেরণ -tমেল পাঠানোর কাজটি "সহজ"।


4

এখানে কিছু বিকল্প রয়েছে:

  • আপনার যদি যথেষ্ট পরিমাণে প্রাইভেলিজ থাকে তবে জেনেরিক টেবিলের সাথে পুনরায় লেখার জন্য সেন্ডমেলটি কনফিগার করুন

  • সম্পূর্ণ শিরোনামটি নিজে লিখুন (বা এটিকে নিজের কাছে মেইল ​​করুন, সমস্ত বার্তা দিয়ে সমস্ত বার্তা সংরক্ষণ করুন এবং পুনরায় সম্পাদনা করুন এবং কমান্ড লাইন থেকে rmail সহ প্রেরণ করুন

  • সেন্ডমেল দিয়ে সরাসরি প্রেরণ করুন, "-f" কমান্ড লাইন পতাকা ব্যবহার করুন এবং আপনার বার্তায় আপনার "থেকে:" লাইনটি অন্তর্ভুক্ত করবেন না

এগুলি একেবারে এক নয়, তবে আমি এটিকে আরও পরে দেখব।

আমার পোর্টেবলে, আমার কাছে বহির্মুখী মেল সার্ভারে ক্লায়েন্ট হিসাবে প্রমাণীকরণের পাঠানো মেইল ​​রয়েছে এবং আমি ফেরত মেইল ​​অন্য অ্যাকাউন্টে আসতে জেনেরিক ব্যবহার করি। ইহা যাদুর মত কাজ করে। আমি ফিচমেল সহ আগত মেইলগুলি একত্রিত করি।


4

উপরের সমস্ত উত্তর থেকে আমি এটি পেয়েছি। আমি যখন তাদের প্রত্যেককে চেষ্টা করেছিলাম তখন কিছুই আমার পক্ষে কাজ করেনি। উপরের সমস্ত উত্তরগুলির সংমিশ্রণ করে আমি প্রচুর ট্রেইল এবং ত্রুটি করেছি এবং এ সম্পর্কে উপসংহারে এসেছি। এটি আপনার পক্ষে কাজ করে কিনা তা আমি নিশ্চিত নই তবে এটি আমার জন্য উন্টু 12.04 এবং আরএইচইল 5.4 এ কাজ করেছে।

echo "This is the body of the mail" | mail -s 'This is the subject' '<receiver-id1@email.com>,<receiver-id2@email.com>' -- -F '<SenderName>' -f '<from-id@email.com>'

যে কোনও সংখ্যক রিসিভার আইডির যোগ করে যে কোনও সংখ্যক লোককে মেলটি প্রেরণ করা যায় এবং মেইলটি সেন্ডারনামের কাছ থেকে- id@email.com থেকে প্রেরণ করা হয়

আশাকরি এটা সাহায্য করবে.


এটি ভোর / ইউএসআর / বিন / মেল কাজ করে না, হতে পারে আপনার কমান্ড প্রেরণমেলের জন্য।
বাসজিরো

3

আমি জানি না এটি অন্যান্য ওএসের সাথে একই কিনা, তবে ওপেনবিএসডি-তে মেল কমান্ডের এই বাক্য গঠন রয়েছে:

mail to-addr ... -sendmail-options ...

সেন্ডমেল-এর বিকল্প রয়েছে যেখানে আপনি FROM: ক্ষেত্রের ইমেল ঠিকানাটি নির্দেশ করেন। নিম্নলিখিত কমান্ডটি আমার পক্ষে কাজ করে।

mail recepient@example.com -f from@example.com

আমার জন্য কাজ কর! (এছাড়াও ওপেনবিএসডি - ম্যাকবুক প্রো।)
আয়নট

4
আপডেট - ইমেল প্রাপক এখনও আমার স্থানীয় অ্যাকাউন্টের নাম আগে দেখে from@example.com- যেমন, "অয়নট from@example.com"। এই পরিবর্তন কিভাবে কোন ধারণা?
আয়নট

4
আমার জন্য কাজ করে না। (ওএস এক্স পর্বত সিংহ) "মেইল: -f এবং লোক পাঠাতে পারে না" "
জনি

3

ধন্যবাদ বিএইউ

mail -s "Subject" user@address.com -- -f from@address.com

আমি সবেমাত্র এটি পেয়েছি এবং এটি আমার পক্ষে কাজ করে। CentOS 5 এ 8.1 মেলের জন্য ম্যান পেজগুলি এটি উল্লেখ করে না। জন্য -fবিকল্প, মানুষ পৃষ্ঠাটি জানাচ্ছে:

-f সিস্টেম মেলবক্সের পরিবর্তে ফাইল অপারেন্ড দ্বারা নামকৃত ফাইল থেকে বার্তা পড়ুন। (ফোল্ডারটিও দেখুন)) যদি কোনও ফাইল অপারেন্ড নির্দিষ্ট না করা থাকে তবে সিস্টেম মেলবক্সের পরিবর্তে এমবক্স থেকে বার্তা পড়ুন।

যাইহোক যাইহোক, এটি খুঁজে পেতে দুর্দান্ত।


4
-fএটি অবশ্যই mailআপনার উদাহরণ হিসাবে কোনও বিকল্প নয় , যেমনটি এর আগে রয়েছে-- । এই বিকল্পটি আপনার এমটিএ
এন্থন

3

ডেবিয়ান 7-তে আমি এখনও এই প্রশ্নটির উত্তরগুলি ((সর্বদা সার্ভারের হোস্ট-নেম হবে) ব্যবহার করে প্রেরকের ঠিকানাটি সঠিকভাবে সেট করতে অক্ষম ছিল তবে এটি এ ভাবে সমাধান করেছেন।

উত্তরাধিকারী-মেলেক্স ইনস্টল করুন

apt-get install heirloom-mailx

এটি ডিফল্ট নিশ্চিত করুন।

update-alternatives --config mailx

একটি বার্তা রচনা করুন।

mail -s "Testing from & replyto" -r "sender <sender@example.com>" -S replyto="sender@example.com" recipient@example.net < <(echo "Test message")

এই update-alternativesআদেশ কি করছে? এটি আমাকে 3 টি পছন্দ দেয় এবং আমি বিস্মিত হই।
স্টিফেন


1

echo "body" | mail -S from=address@foo.com "Hello"

-এস আপনাকে অনেকগুলি স্ট্রিং বিকল্প সুনির্দিষ্ট করতে দেয়, এখন পর্যন্ত হেডার এবং এগুলি পরিবর্তন করার সবচেয়ে সহজ উপায়।


1

প্রতিধ্বনি "পরীক্ষা" | mailx -r নকল@example.com -s 'পরীক্ষা' ইমেল@example.com

এটি ওপেনবিএসডি-তে কাজ করে।


0

এটি আমার জন্য কাজ করেছে

echo "hi root"|mail -rsawrub@testingdomain.org -s'testinggg' root

0

CentOS 5.5-এ, ডোমেন থেকে ডিফল্ট সেট করার সবচেয়ে সহজ উপায় হ'ল হোস্ট ফাইলটি সংশোধন করা। যদি আপনার হোস্ট ফাইলটিতে আপনার WAN / সার্বজনীন আইপি ঠিকানা থাকে তবে কেবল তার জন্য তালিকাভুক্ত প্রথম হোস্টনামটি পরিবর্তন করুন। উদাহরণস্বরূপ, আপনার হোস্ট ফাইলটি দেখতে দেখতে পারে:

...
11.22.33.44 স্থানীয় হোস্ট ডিফল্ট ডোমেন- whatever-else.com
...

যাহা-else.com থেকে এটি প্রেরণের জন্য, কেবল এটি সংশোধন করুন যাতে যাহা-else.com প্রথমে তালিকাভুক্ত হয়, উদাহরণস্বরূপ:

...
11.22.33.44 whatever-else.com স্থানীয় হোস্ট ডিফল্ট ডোমেন-
...

আমি অন্য কোনও ডিস্ট্রো (বা সেন্টোসের এমনকি সংস্করণ) এর জন্যও কথা বলতে পারি না তবে আমার বিশেষ ক্ষেত্রে, উপরেরটি পুরোপুরি সঠিকভাবে কাজ করে।


0

কোন এনকোডিং এবং একটি ফাইল সংযুক্তি Ubuntu 16.04সহ আমাকে একটি কাস্টম উত্তর-ঠিকানা দিতে অনুমতি দিয়েছে UTF-8:

মেল ক্লায়েন্ট ইনস্টল করুন:

sudo apt-get install heirloom-mailx

এসএমটিপি কনফিগারেশন সম্পাদনা করুন:

sudo vim /etc/ssmtp/ssmtp.conf
mailhub=smtp.gmail.com:587
FromLineOverride=YES
AuthUser=???@gmail.com
AuthPass=???
UseSTARTTLS=YES

মেলটি পাঠান:

sender='send@domain.com'
recipient='recipient@domain.com'
zipfile="results/file.zip"
today=`date +\%d-\%m-\%Y`
mailSubject='My subject on the '$today
read -r -d '' mailBody << EOM
Find attached the zip file.

Regards,
EOM
mail -s "$mailSubject" -r "Name <$sender>" -S replyto="$sender" -a $zipfile $recipient < <(echo $mailBody)

0

উপরের সমাধানগুলির কোনওটিই আমার পক্ষে কাজ করছে না ...

#!/bin/bash

# Message
echo "My message" > message.txt

# Mail
subject="Test"
mail_header="From: John Smith <john.smith@example.com>"
recipients="recipient@example.com"

#######################################################################
cat message.txt | mail -s "$subject" -a "$mail_header" -t "$recipients"

-1

পূর্বে প্রদত্ত উত্তরগুলি আমার জন্য সেন্টোএস 5 তে কাজ করে নি। আমি মিট ইনস্টল করেছি। এটিতে প্রচুর বিকল্প রয়েছে। মুট দিয়ে আপনি এইভাবে করেন:

export EMAIL=myfrom@example.com
export REPLYTO=myreplyto@example.com
mutt -s Testing chris@example.org
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.