在一定程度上你可以这样说。但这不一定是正确的。我认为您应该将其更多地理解为“通过简单的设计方法实现更多目标的能力”。为了简单起见,您必须将任务划分为易于理解和易于组装的部分。坦率的UNIX哲学,可以用下面的例子来解释。
所有编程都是某种数据操作!在某些情况下,编程本身就是程序操纵(元编程)。现在,UNIX哲学的工作方式是想象处理文本。什么是文字?文本毕竟是某种数据。当组装成有组织的定义时,文本也将变成XML和JSON。文字也可以是数字列表,文字也可以是csv,tsv和其他内容!在其他情况下,仅因为文本或上下文可以扭曲并变成我们想要的内容,所以Text或字符串可以代表真正巨大的编程数据区域!
所有编程都需要某种形式的数据组织。整理需要搜索...
一种。在那里,仅需使用“ grep”,“ fgrep”及其家人即可。
搜索后,您需要进行一些排序。
b。现在我们有了“ sort”命令。
您刚刚对两个文件进行了排序,现在希望对其进行比较。
C。现在我们有了'diff','cmp'等。
您刚刚发现文件之间没有区别。您现在需要更多的组织数据。
d。您具有“ cat”,管道和重定向运算符来写入文件。
您需要更具体的解析。
e。你有头,尾,多,少,割等来做...
所有这些都使用'|'缝在一起 在一段时间内无需编写任何代码即可生成真正强大的东西。为了更多的搜索和缝纫,您有..
F。awk,shell和sed。
awk,shell和sed使您对文本的控制远胜于cut,diff等人所能提供的。您是否曾经想过使用command1 | command2 | command3 ...系列是一种工作流机制。与If's结合使用时,此功能将变得更加强大。
现在变得更加有趣。
您是否曾经听说过一个名为“ Perl”的实用程序,它是如此强大,您几乎可以用想象不到的工作来完成手头的任何任务。与DBM之类的实用程序一起缝制,您甚至可以对应用程序执行较小的时间持久性要求。请记住,我们甚至还没有走出文本世界,但是设法涵盖了编程环境的大多数方面。
因此,我认为UNIX不仅仅是操作系统。它是旨在以最简单的方式解决问题的工具和环境的集合。简单的方法不一定意味着解决方案的实现简单。但是,简单性本身并不能带您太多。
我在reddit上读过一些。
“如果您唯一的设计目标是简单性,那么您将获得与Plan9一样多的用户”