utilisez «mail» pour lire les e-mails depuis la ligne de commande


11

Je sais que nous pouvons utiliser la mailcommande dans le terminal pour commencer à utiliser le mailprogramme en mode interactif.

Cependant, je veux lire l'e-mail à l'aide de la mailcommande de manière non interactive.

Existe-t-il une commande comme

$ mail -optionToReadMail -mailNumber 1;

qui affichera le contenu des e-mails dans stdout?

Réponses:


17

Pour imprimer le premier message électronique dans votre boîte aux lettres par défaut, utilisez:

echo p | mail

mailn'est interactif que lorsque stdin est un terminal. Parce qu'il mailobtient son stdin à partir d'un tuyau, il n'est pas interactif. La pcommande (print) lui indique d'imprimer le (premier) message par défaut.

Pour plus d'options, vous pouvez trouver cela man mailtrès utile.


Existe-t-il un moyen de le faire sans utiliser de tuyau ??
Sps

1
@sps Bien sûr. Utilisez un ici-chaîne: mail <<<p.
John1024

Existe-t-il un moyen sans utiliser le <personnage?
Sps

2
Pour m'aider à répondre à cette question, veuillez expliquer ce que vous essayez réellement d'accomplir. Pourquoi les tuyaux sont-ils <indésirables?
John1024

2
@sps À l'avenir, mettez toutes vos conditions dans votre question dès le départ, au lieu de les ajouter au coup par coup après avoir répondu à la question.
chepner
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.