Câu hỏi Làm cách nào để gửi thư từ dòng lệnh?


Làm cách nào để gửi thư từ dòng lệnh?


194
2017-11-12 20:27


gốc


ubuntuforums.org/showthread.php?t=780509 tôi có thể giúp gì cho bạn. - User
Bạn cũng có thể sử dụng cây thông. - Kaveh
Bạn cũng có thể cài đặt msmtp và làm theo hướng dẫn được mô tả trong ArchWiki - thiagowfx
Đó là quá xấu câu trả lời cho điều này là như vậy trong ngày. Đó là một câu hỏi quan trọng có thể sử dụng một hướng dẫn tốt - 6005


Các câu trả lời:


Thử cài đặt Ứng dụng E-mail của Mutt. Tùy chọn khác đang sử dụng các emacs với gnus. Các tùy chọn khác có sẵn quá ... IMHO, bạn nên sử dụng thêm chi tiết trong các câu hỏi của bạn, hoặc một số câu trả lời khác nhau cho câu hỏi của bạn, bạn sẽ nhận được :-)


32
2017-11-12 20:46



Chấp nhận điều này vì nó không yêu cầu bất kỳ cấu hình nào và khá thân thiện với người dùng. - Olivier Lalonde
chờ đợi. mutt - thân thiện với người dùng? điên rồ nhất một lớp lót tôi đã đọc ngày hôm nay :) - Stann


  1. cài đặt, dựng lên ssmtp  Install ssmtp:

    sudo apt-get install ssmtp
    
  2. Chỉnh sửa tệp cấu hình ssmtp:

    gksu gedit /etc/ssmtp/ssmtp.conf
    
  3. Nối thêm văn bản sau:

    root=username@gmail.com
    mailhub=smtp.gmail.com:465
    rewriteDomain=gmail.com
    AuthUser=username
    AuthPass=password
    FromLineOverride=YES
    UseTLS=YES
    
  4. Chạy ssmtp và cung cấp địa chỉ email của người nhận:

    ssmtp recepient_name@gmail.com
    
  5. Cung cấp chi tiết tin nhắn như sau:

    To: recipient_name@gmail.com
    From: username@gmail.com
    Subject: Sent from a terminal!
    
    Your content goes here. Lorem ipsum dolor sit amet, consectetur adipisicing.
    (Notice the blank space between the subject and the body.)
    
  6. nhấn Ctrl + D để gửi.


Bạn cũng có thể đặt văn bản trong tệp và gửi nó như sau:

ssmtp recipient_name@gmail.com < filename.txt

143
2017-11-12 21:32



Tôi cảm thấy rất lạ khi để lại mật khẩu email của mình trong một số tệp trên máy tính. Điều này có an toàn không? - oadams
@ loadams không an toàn lắm. Sử dụng xác minh 2 bước để giảm rủi ro của bạn hoặc sử dụng cổng thư không yêu cầu mật khẩu, chẳng hạn như ISP của bạn. - itsadok
Không cài đặt ssmtp trên máy chủ có cài đặt postfix. Postfix sẽ bị xóa. Thay vào đó, chỉ cần sử dụng sendmail user@example.com <file.txt sẽ hoạt động với postfix hoặc ssmtp. - Alistair Buxton
Một điều kì lạ khác mà tôi muốn chia sẻ ở đây là, nó không hiệu quả đối với tôi khi tôi có một mật khẩu dài / phức tạp nhưng làm việc khi tôi sửa đổi nó thành một mật khẩu đơn giản, lạ nhưng đúng. Tôi cũng đã nghe từ người khác nhưng đã thử nó sau nhiều lần gửi thư không thành công và ngay sau khi tôi đơn giản hóa mật khẩu, tôi ngạc nhiên, nó chỉ hoạt động;) - Rajat Gupta
Nếu Gmail không cho phép máy chủ của bạn truy cập, hãy đăng nhập vào Gmail trên máy chủ bằng trình duyệt dòng lệnh. askubuntu.com/questions/460022/using-terminal-as-a-web-browser - Sanghyun Lee


Hầu hết thời gian bạn không cần phải cấu hình máy chủ SMTP, bạn có thể sử dụng đơn giản mail từ dòng lệnh (nếu nó chưa có, hãy cài đặt với sudo apt-get install mailutils). (Hoặc nếu bạn đang ở trên một máy chủ nơi sendmail được cấu hình, vv)

marco@dagobah:~$ mail -v marco.ceppi.use@gmail.com
Subject: Hello World!
This is an email to myself.

Hope all is well.
.
Cc: 

Bạn chấm dứt tin nhắn bằng một lần . Trực tuyến. Đó là khi nào mail sẽ nhắc bạn Cc: nhập thông tin (hoặc để trống) và mail sau đó sẽ in ra thông tin bổ sung về những gì nó đang cố gắng làm, cũng như chi tiết việc xử lý kết nối, truyền và nhận dữ liệu từ máy chủ thư.


84
2017-11-12 22:52



Tôi sẽ nối thêm câu trả lời để bao gồm "sudo apt-get install mailutils" vì nó không có mặt trên một bản Ubuntu 10.04 sạch. Ngoài ra, chấm dứt tin nhắn với a. trên một dòng không hoạt động. Tôi đã phải "Ctrl-D" thay thế. Cuối cùng, tin nhắn đã không đi qua! - Olivier Lalonde
@OlivierLalonde sudo apt-get install mailutils sẽ cài đặt máy chủ SMTP postfix, có thể hơi bị thừa cân đối với một số người. - vaab
mailutils cũng sẽ cài đặt mysql! - chmike
-v tùy chọn không cài đặt thư của tôi 2.99.98, cũng phải sử dụng Ctrl + D để kết thúc - markmnl
Vui lòng cập nhật câu hỏi này, câu hỏi đã lỗi thời. - Blauhirn


apt-get install libio-socket-ssl-perl libnet-ssleay-perl sendemail

sử dụng:

sendemail -f fromuser@gmail.com -t touser@domain.com -u subject -m "message" -s smtp.gmail.com:587 -o tls=yes -xu gmailaccount@gmail.com -xp gmailpassword 

Nếu bạn không muốn chỉ định mật khẩu của mình trong dòng lệnh (thường không phải là điều tốt để làm), bạn có thể bỏ qua tham số đó và sendemail sẽ nhắc bạn nhập mật khẩu ... và hiển thị nó trên màn hình, nhưng ít nhất nó sẽ không nằm trong lịch sử dòng lệnh của bạn.


44
2017-11-14 01:48



Gửi thư từ tài khoản Gmail bằng cách sử dụng sendmail chắc chắn nhất là rất tiện dụng. Cảm ơn bạn. - Mark Tomlin
Tìm một bản vá đây không lặp lại mật khẩu. - Arun
Tôi phải chỉ định cổng với -s smtp.gmail.com:587. - Joe Mornin
thêm một dấu cách trước dòng lệnh để không lưu nó trong lịch sử dòng lệnh - pl-94
một cách khác để không hiển thị nó trên màn hình bash: lưu mật khẩu vào một tệp, sau đó từ tệp đến biến môi trường, ví dụ: pass=$(cat my_password); sendemail... -xp $name ... và tất nhiên nếu bạn gọi nó là lập trình, bạn có thể làm một cái gì đó tương tự, ví dụ: ruby system("sendemail ... -xp #{File.read 'my_password'}...") nó cũng có thể thất bại lần đầu tiên, bạn sẽ nhận được một email đến tài khoản đó cho thấy bạn "cho phép các ứng dụng kém an toàn hơn" sau đó nó có thể hoạt động. - rogerdpack


mpack là cách thức tuyệt vời để gửi tệp đính kèm.

apt-get install mpack

sử dụng:

mpack -s "file you wanted" ./data.pdf loser@supergoober.cn

21
2017-11-12 22:47





Bạn cần một MTA để gửi thư. Đối với điều này, sử dụng postfix:

sudo apt-get install postfix

Để gửi email:

echo "test message" | mailx -s 'test subject' myemail@mydomain.com

CỨU GIÚP


16
2017-08-10 15:57



Bạn cũng cần phải cài đặt mailutils cho mailx, phải không? - Nick
Tôi ước nó thực sự đơn giản, nhưng trừ khi bạn là một người rất đặc biệt, điều này sẽ không hoạt động. 99,9999% các ISP sẽ bỏ qua thư từ các máy chủ postfix riêng tư, bởi vì 9,99999 lần trong số 10 người này là những người gửi spam. - Cerin
điều này không hiệu quả với tôi, nó được yêu cầu cài đặt mailutils khi tôi bước vào thiết bị đầu cuối - mostafiz rahman
Hãy tiếp tục và cài đặt các thư. Bạn không cần postfix IIRC. - uav


Cài đặt gói sendmail sau đó nhập

sendmail -t receiver@example 

sau đó viết email của bạn sau đó nhấn Ctrl + D


14
2017-07-03 17:14





Bạn có thể gửi email từ dòng lệnh với TelNet hoặc là NetCat.

Mọi thứ được giải thích đây.

hanoo@hp_laptop% nc 127.0.0.1 25
220 hp_laptop.localdomain ESMTP Postfix
EHLO man
250 hp_laptop.localdomain
MAIL FROM: <netcat@postfix.com>
250 2.1.0 Ok
RCPT TO: <target@host.com>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
This is the body of my mail,
this is the second line...
.
250 2.0.0 Ok: queued as 9C12E7F404

8
2017-10-30 05:33



Hơi khó sử dụng SSL khi sử dụng phương pháp này;) - iX3
@ iX3 chỉ sử dụng swaks và bạn cũng ổn với SSL / TLS, ;-) - Germar
Hoặc là openssl s_client -starttls smtp ... - Raman