DevOps 语言选择指南

更新于 2026-01-27

cs.fyi 2023-03-15

TL;DR:建议学习 Python(推荐)或 Go 作为编程语言,以及 Shell(推荐)或 PowerShell 作为 Shell 脚本语言。

有志于从事 DevOps 的专业人士常常会疑惑:为了职业发展,应该学习哪种编程语言?尽管可选的语言众多,但重要的是聚焦于 DevOps 生态系统中真正相关的语言。本文将讨论编程语言和 Shell 脚本语言这两类,并为 DevOps 从业者推荐几种最普遍使用的语言。

编程语言

虽然市面上存在大量编程语言,但并非所有都适用于 DevOps。我个人的建议是选择 PythonGo。这两种语言各有不同的优势和适用场景,但在 DevOps 社区中都被广泛使用。

Python

Python 是一种高级、解释型语言,在 DevOps 生态系统中适用于各种用途。Python 几乎在所有系统上都受支持,并且具备跨平台特性,是一种非常通用的学习语言。Python 可用于编写脚本,也能胜任自动化任务和开发工作。

Python 在多种 DevOps 工具中都有应用,例如配置管理与包管理工具 Ansible 和 SaltStack。此外,Azure CLI 和 AWS CLI 等命令行接口也是用 Python 编写的。Python 的另一大优势是相较于其他编程语言更容易上手。

如果你想学习 Python,请专注于 Python 3,因为 Python 2 已于 2020 年 1 月底正式停止支持。一本非常适合入门、用于通过 Python 自动化日常任务的优秀资源是《Automate the Boring Stuff》(中文译名:《Python 编程快速上手——让繁琐工作自动化》)。

Go

Go 是 Google 于 2009 年发布的开源编程语言。最初,它被设计用于网络和分布式系统。然而,Go 很快在 DevOps 领域流行起来,尤其是在容器技术方面。

Kubernetes、Docker 以及其他容器技术都是用 Go 编写的。当你需要开发或深入理解这些工具时,Go 就成为一门必不可少的语言。此外,Go 支持并发处理并内置垃圾回收机制,使其成为构建可扩展系统的热门选择。

Shell 脚本语言

对于 DevOps 从业者而言,Shell 脚本语言至关重要,因为它们提供了自动化任务和运行脚本的手段。我个人建议选择 BashPowerShell Core。如果你主要使用 Linux 服务器,很可能会遇到 Bash;而 PowerShell Core 则是由微软开发的跨平台 Shell 语言。

Bash

Bash 是一种 Unix Shell 语言,在 Linux 生态系统中被广泛使用。如果你就职的公司主要使用 Linux 系统,那么学习 Bash 是很有必要的。此外,由于 DevOps 中的许多任务都需要在类 Unix 环境下执行,Bash 在 DevOps 社区中也极为常见。

PowerShell Core

PowerShell Core 是微软开发的一款开源、跨平台的 Shell 语言。如果你主要使用 Windows 服务器,那么建议学习 PowerShell Core。使用 PowerShell Core 的一个优势在于,你可以轻松地将其代码迁移到 Windows PowerShell。此外,PowerShell Core 也可以安装在 Linux 系统上。

结论

我们推荐 DevOps 从业者学习 PythonGo 作为编程语言。这两种语言都被广泛使用,且适用于不同场景:Python 是一种易于学习的语言,适用于自动化和开发任务;而 Go 是一种支持并发的语言,常用于构建可扩展的系统。

在 Shell 脚本语言方面,推荐 BashPowerShell Core。Bash 在 Linux 生态系统中被广泛使用,而 PowerShell Core 则是微软开发的跨平台语言。

请记住:始终选择最适合你所处环境、并能为你的工作带来价值的语言。祝你学习愉快!