Diferença entre mail e mailx? [duplicado]

15

Qual é a diferença entre mail e mailx?

Estou tentando solucionar um problema no qual posso enviar e-mails do servidor A com este comando echo $MESSAGE | mail -s "$SUBJECT" -r $FROM $RECIPIENTS , mas executar o mesmo comando do servidor B me lança esse erro (os dois servidores são RHEL)

mail: invalid option -- r
Usage: mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr ...
            [-- sendmail-options ...]
       mail [-iInNv] -f [name]
       mail [-iInNv] [-u user]

Agora ... passando pelo manpages mail to ty para entender o que está acontecendo, man mail me dá isso:

no servidor A

MAILX(1)                         User Commands                        MAILX(1)

NAME
       mailx - send and receive Internet mail

SYNOPSIS
       mailx [-BDdEFintv~] [-s subject] [-a attachment ] [-c cc-addr] [-b bcc-addr] [-r from-addr] [-h hops]
              [-A account] [-S variable[=value]] to-addr . . .
       mailx [-BDdeEHiInNRv~] [-T name] [-A account] [-S variable[=value]] -f [name]
       mailx [-BDdeEinNRv~] [-A account] [-S variable[=value]] [-u user]

Mas no servidor B

MAIL(1)                   BSD General Commands Manual                  MAIL(1)

NAME
     mail - send and receive mail

SYNOPSIS
     mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr... [-- sendmail-options...]
     mail [-iInNv] -f [name]
     mail [-iInNv] [-u user]

Agora ... se eu tentar man mailx no servidor B eu recebo:

MAILX(P)                   POSIX Programmerâs Manual                  MAILX(P)

PROLOG
       This manual page is part of the POSIX Programmerâs Manual.  The Linux implementation of this interface may differ
       (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not  be  imple-
       mented on Linux.

NAME
       mailx - process messages

SYNOPSIS
   Send Mode
              mailx [-s subject] address...

   Receive Mode
              mailx -e

              mailx [-HiNn][-F][-u user]

              mailx -f[-HiNn][-F][file]

O servidor B tem uma versão diferente do correio que o servidor A? Mailx e Mail são coisas diferentes? Eu gostaria de usar a opção -r que eu uso no servidor A, mas no servidor B e eu realmente não sei o que está acontecendo.

    
por Rhyuk 04.09.2013 / 21:00

1 resposta

13

Veja o confuso histórico de mail, nail, mailx .

Resumidamente, mail é o programa mais antigo, mailx (anteriormente nail em algumas implementações) é uma versão mais recente, com uma interface estendida na maior parte mas não totalmente compatível.

mailx ainda é bastante antigo, criado por volta de 1986 e padronizado como parte do POSIX em 1992. Existem várias implementações (mesmo em Linuxes modernos), e algumas fornecem extensões para o padrão.

A opção -r é uma dessas extensões. Dependendo da distribuição do Linux e do pacote de mensagens que você instalou, você pode ou não ter essa opção. Consulte, por exemplo, aqui .

Se você quiser escrever scripts portáteis, é melhor não contar com isso.

    
por 04.09.2013 / 21:53

Tags