|
|
51CTO旗下网站
|
|
移动端

Bash vs Python:你该使用哪个?

Bash 和 Python 是大多数自动化工程师最喜欢的编程语言。它们都各有优缺点,有时很难选择应该使用哪一个。所以,最诚实的答案是:这取决于任务、范围、背景和任务的复杂性。

作者:Archit Modi来源:Linux中国|2019-04-15 13:45

【大咖·来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》

Bash vs Python:你该使用哪个?

两种编程语言都各有优缺点,它们在某些任务方面互有胜负。

Bash 和 Python 是大多数自动化工程师最喜欢的编程语言。它们都各有优缺点,有时很难选择应该使用哪一个。所以,最诚实的答案是:这取决于任务、范围、背景和任务的复杂性。

让我们来比较一下这两种语言,以便更好地理解它们各自的优点。

Bash

  • 是一种 Linux/Unix shell 命令语言
  • 非常适合编写使用命令行界面(CLI)实用程序的 shell 脚本,利用一个命令的输出传递给另一个命令(管道),以及执行简单的任务(可以多达 100 行代码)
  • 可以按原样使用命令行命令和实用程序
  • 启动时间比 Python 快,但执行时性能差
  • Windows 中默认没有安装。你的脚本可能不会兼容多个操作系统,但是 Bash 是大多数 Linux/Unix 系统的默认 shell
  • 与其它 shell (如 csh、zsh、fish) 完全兼容。
  • 通过管道(|)传递 CLI 实用程序如 sedawkgrep 等会降低其性能
  • 缺少很多函数、对象、数据结构和多线程支持,这限制了它在复杂脚本或编程中的使用
  • 缺少良好的调试工具和实用程序

Python

  • 是一种面对对象编程语言(OOP),因此它比 Bash 更加通用
  • 几乎可以用于任何任务
  • 适用于大多数操作系统,默认情况下它在大多数 Unix/Linux 系统中都有安装
  • 与伪代码非常相似
  • 具有简单、清晰、易于学习和阅读的语法
  • 拥有大量的库、文档以及一个活跃的社区
  • 提供比 Bash 更友好的错误处理特性
  • 有比 Bash 更好的调试工具和实用程序,这使得它在开发涉及到很多行代码的复杂软件应用程序时是一种很棒的语言
  • 应用程序(或脚本)可能包含许多第三方依赖项,这些依赖项必须在执行前安装
  • 对于简单任务,需要编写比 Bash 更多的代码

我希望这些列表能够让你更好地了解该使用哪种语言以及在何时使用它。

你在日常工作中更多会使用哪种语言,Bash 还是 Python?请在评论中分享。

【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

CentOS文件服务的最佳实战

CentOS文件服务的最佳实战

涨薪跳槽必备技能
共15章 | 追风蚂蚁

79人订阅学习

小白网工宝典

小白网工宝典

一次搞定思科华为
共15章 | 思科小牛

286人订阅学习

防火墙大佬修炼手册

防火墙大佬修炼手册

网工达人必备
共20章 | 捷哥CCIE

322人订阅学习

读 书 +更多

Scrum敏捷项目管理

本书详细描述如何在复杂技术项目中使用Scrum,并结合真实的Scrum案例及专家洞识,在简明及高度概括的理论之上更侧重于实践,并不断强调Scru...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客