2008-09-23 34 views
46

Có ai biết cách thay đổi người dùng khi gửi email bằng lệnh thư không? Tôi đã xem qua trang người đàn ông và không thể xem cách thực hiện điều này.Chỉ định người dùng khi gửi email bằng lệnh thư

Chúng tôi đang chạy Redhat Linux 5.

+0

xoá thẻ 'trùng lặp'. Tôi tin rằng việc sử dụng thẻ này không được khuyến khích. –

+4

Bạn có thể đã có câu trả lời cho câu hỏi này nhanh hơn rất nhiều bằng cách chỉ cần gõ "man mail", sẽ hiển thị cho bạn hướng dẫn sử dụng cho lệnh. –

Trả lời

19

email -r [email protected] -R [email protected]

-r = từ-addr -R = reply-to addr

Tác giả đã cho biết phiên bản thư của anh ấy không hỗ trợ cờ này. Nhưng nếu bạn có một phiên bản mà điều này hoạt động tốt.

+0

-r không phải là tùy chọn hợp lệ cho tùy chọn lệnh thư cho phiên bản thư chúng tôi có. –

+1

Trên Debian Wheezy, -r đang làm việc trên lệnh thư để chỉnh sửa Từ địa chỉ nhưng -R không hoạt động để chỉnh sửa địa chỉ Trả lời. – baptx

+1

Chỉ cần làm rõ cho bất kỳ ai khác -r DOES ảnh hưởng đến địa chỉ được kiểm tra cho hồ sơ spf – Kevin

2

Đây là số solution.

Giải pháp dễ nhất thứ hai sau -r (đó là để xác định một Từ: header và tách nó ra khỏi cơ thể bằng một dòng mới như thế này

$mail -s "Subject" [email protected] 
From: Joel <[email protected]> 

Hi! 
. 

công trình chỉ trong một vài phiên bản mail, không biết những gì phiên bản redhat mang).

PS: Hầu hết các phiên bản của mail suck!

3

Bạn có thể thêm tùy chọn sendmail đến cuối của lệnh mail bằng cách đầu tiên thêm -. -f là lệnh trên sendmail để thiết lập địa chỉ từ. Vì vậy, bạn có thể làm điều này:

email [email protected] - -f [email protected]

57

Bạn có thể chỉ định bất kỳ tiêu đề thêm bạn có thể cần với -a

$mail -s "Some random subject" -a "From: [email protected]" [email protected] 
+5

làm việc trên debian wheezy – michabbb

+4

@michabbb không hoạt động trên Debian Wheezy của tôi, kết quả: "From: [email protected]ld: Không có tệp hoặc thư mục nào" – baptx

+0

Bạn đã bao gồm thông số của mình chưa trong dấu ngoặc kép như trong ví dụ trên? – daniels

5

Không ai trong số những hoạt động đối với tôi (Ubuntu 12.04) nhưng cuối cùng với thử nghiệm & lỗi tôi nhận:

echo 'my message blabla\nSecond line (optional of course)' | 
mail -s "Your message title" 
-r 'Your full name<[email protected]>' 
-Sreplyto="[email protected]" 
[email protected][,[email protected]] 

(tất cả trong một dòng, không có không gian trong "-Sreplyto")

Tôi có lệnh mail này từ:

apt-get install mailutils 
1

Không có ở trên làm việc cho tôi. Và tôi mất nhiều thời gian để tìm ra, hy vọng điều này sẽ giúp anh chàng tiếp theo.

Tôi đang sử dụng Ubuntu 12.04 LTS với mailutils v2.1.

tôi tìm thấy giải pháp này ở đâu đó trên mạng, không biết ở đâu, không thể tìm thấy nó một lần nữa:

-aFrom:[email protected] 

Full Command sử dụng:

cat /root/Reports/ServerName-Report-$DATE.txt | mail -s "Server-Name-Report-$DATE" [email protected] -aFrom:[email protected] 
12

Khi gửi qua SMTP, mail trang người đàn ông khuyên để thiết lập các biến from, theo cách này:

mail -s Subject -S [email protected] [email protected] 

Nếu không, sử dụng tùy chọn -r.

Thử nghiệm trên CentOS 6.

Bạn cũng có thể đính kèm một tập tin bằng cách sử dụng cú pháp dưới đây:
mail -s Subject -S [email protected] [email protected] <absolute_path_of_file_to_be_attached>

1

Hầu hết mọi người cần phải thay đổi hai giá trị khi cố gắng giả mạo một cách chính xác từ địa chỉ trên email. Đầu tiên là địa chỉ và địa chỉ thứ hai là địa chỉ orig-to. Nhiều giải pháp được cung cấp trực tuyến chỉ thay đổi một trong các giá trị này.

Nếu làm thư mục gốc, tôi thử một lệnh thư đơn giản để gửi cho chính tôi một email có thể giống như thế này. echo "test" | mail -s "a test" [email protected]

Và các bản ghi liên quan: Feb 6 09:02:51 myserver postfix/qmgr[28875]: B10322269D: from=<[email protected]>, size=437, nrcpt=1 (queue active) Feb 6 09:02:52 myserver postfix/smtp[19848]: B10322269D: to=<[email protected]>, relay=myMTA[x.x.x.x]:25, delay=0.34, delays=0.1/0/0.11/0.13, dsn=2.0.0, status=sent (250 Ok 0000014b5f678593-a0e399ef-a801-4655-ad6b-19864a220f38-000000)

Đang cố gắng để thay đổi từ địa chỉ với - echo "test" | mail -s "a test" [email protected] -- [email protected]

này thay đổi orig-to đánh giá cao nhưng không phải là từ giá trị: Feb 6 09:09:09 myserver postfix/qmgr[28875]: 6BD362269D: from=<[email protected]>, size=474, nrcpt=2 (queue active) Feb 6 09:09:09 myserver postfix/smtp[20505]: 6BD362269D: to=<[email protected]>, orig_to=<[email protected]>, relay=myMTA[x.x.x.x]:25, delay=0.31, delays=0.06/0/0.09/0.15, dsn=2.0.0, status=sent (250 Ok 0000014b5f6d48e2-a98b70be-fb02-44e0-8eb3-e4f5b1820265-000000)

Tiếp theo thử với ar và a - để điều chỉnh từ và orig-to. echo "test" | mail -s "a test" -r [email protected] [email protected] -- [email protected]

Và các bản ghi: Feb 6 09:17:11 myserver postfix/qmgr[28875]: E3B972264C: from=<[email protected]>, size=459, nrcpt=2 (queue active) Feb 6 09:17:11 myserver postfix/smtp[21559]: E3B972264C: to=<[email protected]>, orig_to=<[email protected]>, relay=myMTA[x.x.x.x]:25, delay=1.1, delays=0.56/0.24/0.11/0.17, dsn=2.0.0, status=sent (250 Ok 0000014b5f74a2c0-c06709f0-4e8d-4d7e-9abf-dbcea2bee2ea-000000)

Đây là cách nó làm việc cho tôi. Hy vọng điều này sẽ giúp một ai đó.

0

Nhờ tất cả các nhà cung cấp mẫu, một số nhà cung cấp đã làm việc cho một số nhà cung cấp không. Dưới đây là một định dạng ví dụ đơn giản khác phù hợp với tôi.

echo "Sample body" | mail -s "Test email" [email protected] [email protected] 
1

này hoạt động trên Centos7

echo "This is the main body of the mail" | mail -s "Subject of the Email" -r [email protected] [email protected]

+1

-r displayname <[email protected]> –

-1

tôi phải đối mặt với cùng một vấn đề. Nhưng tôi đã giải quyết được vấn đề chỉ cần thiết lập trường geko trong trường /ect/passwd. Postfix theo mặc định gửi thư từ người dùng đăng nhập. Giả sử bạn muốn thay đổi từ trường thành Cảnh báo. Bạn chỉ cần chỉnh sửa tập tin/ect/passwd trong bất kỳ trình soạn thảo nào bạn thích.

  1. vim/vv/passwd

root: x: 0: 0: Alerts:/root:/bin/bash

  1. Restart postfix.

Bây giờ hãy kiểm tra kết quả.

  1. echo "Đây là phần chính của thư" | mail -s "Chủ đề của Email" [email protected]

Bây giờ trong người nhận. Từ sẽ được hiển thị là Cảnh báo như bạn đã chỉ định trong trường geko. Hy vọng giải pháp này phù hợp với bạn.

+0

Đó là tên hiển thị chứ không phải địa chỉ nguồn. – Emmel

+0

Trường được gọi là 'gecos'. Xem https://en.wikipedia.org/wiki/Gecos_field. Không làm việc cho tôi, nó vẫn sử dụng tên người dùng thực của tôi. – NZD

Các vấn đề liên quan