BSD风格和Unix风格的命令行选项有什么区别?

我试图谷歌,但无济于事。 有人可以帮我吗?

这取决于程序。 ps是你经常遇到的 – 在BSD环境中长大的人会键入ps auwwx而在System V环境中长大的人会键入ps -ef ,尽pipeps现在支持这两种types的选项。

很less,看:

也担心:

区分大小写

 mailx -R [email protected] ..... # GNU/Linux mailx -r [email protected] ..... # Unix 

某些口味需要的选项,但不是其他的

 /usr/bin/echo -e "This\nis a\n test" # GNU/Linux /bin/echo "This\nis a\n test" # Unix 

其他选项,例如

 last -y # BSD - include year last -a # GNU/Linux - include hostname 

这个平台的主要区别之一就是位置参数。 大多数命令行实用程序将执行该位置参数之前的标志。 也就是说,在GNU系统上,以下是很好的:

 ls / -la 

在BSD上,这些通常是无效的。 显然,这不是两者之间差异的程度,而是当我在两者之间切换时,将我推上墙的差异之一。