邮件和mailx之间的区别?

邮件和mailx之间的区别?

邮件和mailx有什么区别?

我正在尝试解决一个问题,我可以使用此echo $MESSAGE | mail -s "$SUBJECT" -r $FROM $RECIPIENTS命令从服务器 A 发送邮件,但从服务器 B 执行相同的命令会引发此错误(两台服务器都是 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]

现在...浏览邮件手册页以了解发生的情况,man mail给我这个:

在服务器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]

但在服务器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]

现在...如果我尝试man mailx在服务器 BI 中得到:

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]

服务器 B 的邮件版本与服务器 A 不同? Mailx 和 Mail 是不同的东西吗?我想使用在服务器 A 中使用的 -r 选项,但在服务器 B 中我真的不知道发生了什么。

答案1

看看这段扑朔迷离的历史邮件、钉子、mailx

简而言之,mail是较旧的程序mailx(以前nail在某些实现中)是较新的版本,具有扩展的大部分但不完全兼容的接口。

mailx仍然相当古老,大约于 1986 年创建,并于 1992 年作为 POSIX 的一部分标准化。有多种实现(甚至在现代 Linux 中),其中一些提供了标准的扩展。

-r选项就是这样的扩展之一。根据您的 Linux 发行版以及您安装的邮件包,您可能有也可能没有该选项。参见例如这里

如果你想编写可移植的脚本,最好不要依赖它。

相关内容