ข้อความ“ คุณมีเมล” ในเทอร์มินัล, OS X [ปิด]


170

ไม่กี่วันที่ผ่านมาฉันได้รับข้อความนี้ในหน้าต่างเทอร์มินัลของฉัน: ป้อนคำอธิบายรูปภาพที่นี่

นั่นหมายความว่าอย่างไร? ฉันไม่เคยเห็นแบบนั้นมาก่อน

นั่นคือข้อความจากบอท xCode

บอท

ขอบคุณสำหรับความช่วยเหลือ


11
เรียกใช้mailและอ่านเมลของคุณ
เครื่องปั่น

สำหรับครั้งแรก - ฉันไม่มีเมลที่ยังไม่ได้อ่าน สำหรับวินาที - ทำไมข้อความนี้ปรากฏขึ้นในตอนนี้ ฉันไม่เคยเห็นเธอมาก่อน
Oleg Sobolev

2
คำถามนี้ดูเหมือนจะไม่เป็นหัวข้อเพราะเหมาะสำหรับ apple.stackexchange.com
Monolo

คำตอบ:


60

อาจเป็นข้อความจากระบบของคุณ

พิมพ์ใน terminal:

man mail

และดูว่าคุณจะได้รับข้อความนี้จากระบบของคุณอย่างไร


ใช้ที่อยู่อีเมลใด
AbhimanyuAryan

4
จากนั้นพิมพ์ "d *" เพื่อลบข้อความทั้งหมด
Ricardo Martins

9
การล้าง/var/mail/<your-username>เมล์เมื่อถึงการมาถึงของอีเมล (ซึ่งยังไม่ได้อ่าน) สามารถเปิดใช้งานYou have mailทุกครั้งที่คุณเปิดแท็บใหม่ในเทอร์มินัล (ซึ่งเกิดขึ้นกับฉันหนึ่งครั้ง) ในการแก้ปัญหานี้จำเป็นต้องลบไฟล์ออก (เช่นsudo rm /var/mail/<your-username>)
Muntashir Akon

4
นี่ไม่ได้ตอบคำถาม
minatverma

272

ฉันยังมีปัญหา "คุณมีอีเมล" นี้เกิดขึ้นทุกครั้งที่ฉันเริ่มต้น Terminal

สิ่งที่ฉันค้นพบคือสิ่งนี้

บางสิ่งที่ฉันติดตั้ง (ไม่แน่ใจทั้งหมด แต่อาจเป็นสคริปต์หรือบางอย่างที่เกี่ยวข้องกับ Alfred Workflow [ที่เดา]) ได้เปลี่ยนระบบ OS X เพื่อเริ่มการนำเสนอการแจ้งเตือนการทุบตีเทอร์มินัล ก่อนหน้านั้น Wordpress ได้พยายามใช้ระบบ Local Mail เพื่อส่งข้อความ ข้อความถูกตีกลับเนื่องจากมีที่อยู่ผู้รับไม่ถูกต้อง ข้อความที่ตีกลับนั้นสิ้นสุดลงในกล่องจดหมายของระบบภายใน ดังนั้นเทอร์มินัล (ทุบตี) จึงแจ้งให้ฉันทราบว่า "คุณมีอีเมล"

คุณสามารถเข้าถึงอีเมลโดยใช้คำสั่ง

mail

วิธีนี้จะนำคุณเข้าสู่ Mail และจะแสดงรายการข้อความที่จัดเก็บไว้ที่นั่นทันที หากคุณต้องการดูเนื้อหาของข้อความแรกให้ใช้

t

นี่จะแสดงเนื้อหาของข้อความแรกให้คุณเต็ม คุณจะต้องเลื่อนลงมาผ่านข้อความเพื่อดูมันทั้งหมดโดยการกดปุ่มdown-arrowคีย์

หากคุณต้องการข้ามไปยังจุดสิ้นสุดของข้อความให้ใช้

spacebar

หากคุณต้องการยกเลิกการดูข้อความให้ใช้

q 

เพื่อดูข้อความถัดไปในการใช้คิว

n

... สมมติว่ามีข้อความมากกว่าหนึ่งข้อความ

หมายเหตุ: คุณต้องใช้คำสั่งเหล่านี้ที่?พรอมต์คำสั่งmail พวกเขาจะไม่ทำงานในขณะที่คุณกำลังดูข้อความ การกดปุ่มnขณะดูข้อความจะทำให้เกิดข้อผิดพลาดที่เกี่ยวข้องกับนิพจน์ทั่วไป ดังนั้นหากในท่ามกลางการดูข้อความให้กดqเพื่อออกจากที่นั่นหรือกดspacebarเพื่อข้ามไปยังจุดสิ้นสุดของข้อความจากนั้นเมื่อ?พร้อมต์ให้กดnพรอมต์ตี

การดูเนื้อหาของข้อความด้วยวิธีนี้อาจช่วยให้คุณระบุสิ่งที่พยายามส่งข้อความ

นอกจากนี้คุณยังสามารถดูข้อความที่ต้องการโดยป้อนหมายเลขที่หน้าจอ?พร้อมรับคำ 3ตัวอย่างเช่นจะแสดงเนื้อหาของข้อความที่สาม (หากมีจำนวนมากในนั้น)

ใช้คำสั่ง (ที่?พรอมต์คำสั่ง)

d [message number]

หากต้องการลบแต่ละข้อความเมื่อคุณดูเสร็จแล้ว ตัวอย่างเช่นd 2จะลบหมายเลขข้อความ 2 หรือคุณสามารถลบรายการข้อความเช่นd 1 2 5 7หรือคุณสามารถลบรายการข้อความเช่น คุณจะเห็นหมายเลขข้อความในรายการข้อความเมลที่แสดงให้คุณเห็น

ในการลบข้อความทั้งหมดจากอีเมลพรอมต์ ( ?) d *ใช้คำสั่ง

ตามความคิดเห็นในโพสต์นี้คุณจะต้องใช้qเพื่อออกจากเมลซึ่งจะบันทึกการเปลี่ยนแปลงใด ๆ

หากคุณต้องการดูเมลทั้งหมดในเอาต์พุตเดียวให้ใช้คำสั่งนี้ที่พร้อมต์ bash (เช่นไม่ใช่จากภายในเมล แต่มาจากพรอมต์คำสั่งปกติของคุณ):

cat /var/mail/<username>

และหากคุณต้องการลบอีเมลทั้งหมดในหนึ่งครั้งให้ใช้คำสั่งนี้

sudo rm /var/mail/<username>

ในกรณีของฉันมีข้อความจำนวนหนึ่ง ดูเหมือนว่าเป็นข้อความที่ส่งคืนที่ตีกลับ มันถูกส่งโดยการติดตั้ง Wordpress ท้องถิ่น มันเป็นการแจ้งเตือนเมื่อผู้ใช้ "ผู้ดูแลระบบ" (ฉัน) เปลี่ยนรหัสผ่าน สองข้อความเพิ่มเติมที่นั่น ทั้งคู่ดูเหมือนจะเป็นเหตุการณ์เดียวกัน

สิ่งที่ฉันไม่รู้และไม่สามารถตอบคำถามของคุณได้ก็คือทำไมฉันเพิ่งเริ่มเห็นการแจ้งเตือนอีเมลนี้ทุกครั้งที่ฉันเปิด Terminal อีเมลได้ถูกสร้างขึ้นเมื่อสองสามเดือนที่ผ่านมาและถึงกระนั้นฉันก็สังเกตเห็นว่า "คุณมีอีเมล" ปรากฏขึ้นในช่วงสองสามสัปดาห์ที่ผ่านมา ฉันสงสัยว่าเป็นผลมาจากบางสิ่งที่เวิร์กโฟลว์ที่ฉันติดตั้งในอัลเฟรดและเวิร์กโฟลว์นั้นโดยใช้ Terminal bash เพื่อแจ้งเตือน ... หรือบางสิ่งบางอย่างตามสายเหล่านั้น

เพียงแค่ลบข้อความ

หากคุณไม่มีความสนใจในการกำหนดแหล่งที่มาของข้อความและเพียงต้องการที่จะกำจัดมันอาจจะทำได้ง่ายขึ้นโดยไม่ต้องใช้mailคำสั่ง (ซึ่งอาจค่อนข้างเที่ยวยุ่งยิ่ง) ตามที่คนอื่น ๆ ชี้ให้เห็นคุณสามารถใช้คำสั่งนี้แทน:

sudo rm /var/mail/YOURUSERNAME

12
หมายเหตุคุณจะต้องใช้qเพื่อออกจากเมลเพื่อบันทึกการเปลี่ยนแปลงไปยังดิสก์
storm_m2138

คำสั่ง 'n' และ 'd' ที่ตามมาโดยใช้ 't' เพื่อแสดงข้อความแรกไม่ทำงานตามที่คุณอธิบายให้ฉัน ดูเหมือนว่า 'd' จะเลื่อนและ 'n' มีบางอย่างเกี่ยวกับนิพจน์ทั่วไป
Nathan Hornby

@NathanHornby คุณจะต้องใช้คำสั่งนั้นเมื่อคุณกลับมาที่?พรอมต์คำสั่ง tจะให้การอ่านค่าเต็มของข้อความแรกพร้อมกับ:ข้อความแจ้งหากข้อความล้นออกมาจำนวนหนึ่ง การกดปุ่มใด ๆ จะทำให้ปุ่มแสดงข้อความต่อไปเรื่อย ๆ จนกว่าคุณจะอ่านจนจบ หรือคุณสามารถเลื่อนด้วยเมาส์ / ทัชแพดของคุณ คุณอาจจะสามารถที่จะตีqที่จะยกเลิกการดูข้อความ (ฉันไม่สามารถทดสอบว่าเพียงแค่ตอนนี้ แต่ลอง) d *หากต้องการลบข้อความทั้งหมดที่คุณต้องการใช้คำสั่ง หากต้องการลบข้อความที่สองคุณต้องใช้d 2และอื่น ๆ ใช้พวกเขาที่?พร้อมท์จดหมาย
แรงบันดาลใจ

1
ง่ายและมีประสิทธิภาพขอขอบคุณ
Chrstph SLN

1
นอกจากนี้คุณยังสามารถลบช่วงของข้อความเช่น:d 1-15
Jay Shepherd

55

หากคุณไม่ต้องการความยุ่งยากในการใช้mailงานคุณสามารถอ่านอีเมลด้วย

cat /var/mail/<username>

และลบเมลด้วย

sudo rm /var/mail/<username>

คุณสามารถบอกฉันว่าที่อยู่อีเมลใดที่ลงทะเบียนใน / var / mail / ฉันจะตรวจสอบได้อย่างไร?
AbhimanyuAryan

@ androidplusios.design ที่อยู่อีเมลคือชื่อผู้ใช้ของคุณในระบบ อีเมลเป็นอีเมลที่ส่งถึงคุณโดยระบบ คุณอาจเป็นนามแฝงสำหรับผู้ใช้รายอื่นในระบบและได้รับอีเมลของพวกเขา /etc/aliasesดู สำหรับข้อมูลเพิ่มเติมให้ตรวจสอบข้อความ“ คุณมีจดหมายใหม่” ใน Linux / UNIX คืออะไร .
kba

นี่เป็นคำตอบเดียวที่นี่ใช้งานได้จริงสำหรับฉันไชโย!
Nathan Hornby

10

หมายความว่ากระบวนการหรือสคริปต์ที่คุณสร้างขึ้นกำลังส่งอีเมลไปยังบัญชีในเครื่องท้องถิ่นของคุณ (ตัวอย่างเช่นเซิร์ฟเวอร์อีเมลที่ทำงานบนแอปพลิเคชัน localhost)

จัดการเมลนี้ด้วยคำสั่งเหล่านี้:

t <message list>        type messages
n                       goto and type next message
e <message list>        edit messages
f <message list>        give head lines of messages
d <message list>        delete messages
s <message list>        file append messages to file
u <message list>        undelete messages
R <message list>        reply to message senders
r <message list>        reply to message senders and all recipients
pre <message list>      make messages go back to /var/mail
m <user list>           mail to specific users
q                       quit, saving unresolved messages in mbox
x                       quit, do not remove system mailbox
h                       print out active message headers
!                       shell escape
cd [directory]          chdir to directory or home if none given

A ประกอบด้วยจำนวนเต็มช่วงที่เหมือนกันหรือชื่อผู้ใช้ที่คั่นด้วยช่องว่าง หากไม่ใช้ Mail จะใช้ข้อความล่าสุดที่พิมพ์

A ประกอบด้วยชื่อผู้ใช้หรือชื่อแทนคั่นด้วยช่องว่าง นามแฝงมีการกำหนดใน. mailrc ในไดเรกทอรีบ้านของคุณ


10

ตามที่อธิบายไว้ใน Inspired Lifeคุณสามารถค้นหาว่าเกิดอะไรขึ้นโดยใช้mailคำสั่ง

หากคุณไม่ต้องการลบข้อความที่ไม่เกี่ยวข้อง / สร้างโดยอัตโนมัติทีละรายการ (เช่นฉัน) เพียงแค่เรียกใช้คำสั่งด้านล่างเพื่อกำจัดข้อความทั้งหมด:

echo -n > /var/mail/yourusername
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.