Warning: mkdir(): No such file or directory in /www/wwwroot/news.ynwlzc.cn/m/index.php on line 44

Warning: mkdir(): No such file or directory in /www/wwwroot/news.ynwlzc.cn/m/index.php on line 48

Warning: file_put_contents(/www/wwwroot/news.ynwlzc.cn/log_userwlzc/2026/05/13/216.73.217.125_visit.csv): failed to open stream: No such file or directory in /www/wwwroot/news.ynwlzc.cn/m/index.php on line 60

Warning: file_put_contents(/www/wwwroot/news.ynwlzc.cn/log_userwlzc/2026/05/13/216.73.217.1252026_05_13_m_loginvisit.csv): failed to open stream: No such file or directory in /www/wwwroot/news.ynwlzc.cn/m/index.php on line 96
 不懂编程语言的运维人员还能走多远?--移动互联【未来之窗旗下】 不懂编程语言的运维人员还能走多远?
返回 首页

不懂编程语言的运维人员还能走多远?

2016-03-12  未来之窗软件服务

最近经常有同行的朋友或者Linux初学者问我:运维人员是否需要学一门语言?该学哪种语言呢?


在大数据、云计算发展迅猛的今天,系统运维人员如果不懂一点开发语言的话,确实会举步维艰,因为在运维工作中,业务系统的繁多,线上服务器规模很大时,只能通过写脚本的方式(自动化也是脚本一种哦)自动化完成,不然,如此重复和繁琐的工作,靠人力是无法负担的,所以,学习一门可以让运维工作批量完成的语言,就显得很重要了。


应该学习一门什么语言呢?



对于Linux系统运维人员来说,答案就比较复杂,因为有很多的选择。Shell、Perl、Python、ruby等等。


我认为,每一个Linux系统运维人员都应该知道Linux外壳程序(SH或BASH),另外还要知道Perl、Ruby或Python当中的某一门语言。至于学哪一门语言,并不重要。


在我看来,任何语言都是为运维工作服务的,只要能完成运维工作,你喜欢哪种语言,那么你就用哪种语言吧,当然,对于初学者会有一些不同的选择,如果你是初学者,推荐当下比较流行或者企业应用比较多的语言来学的话,对以后的工作会有很大帮助,毕竟没有哪个公司愿意接受一种陌生的语言。


初学者一开始就要马上学习一门运维语言吗?


我觉得这个为时过早了,因为任何语言,特别是Shell、Python等这些语言,与Linux联系很紧密,如果对Linux一无所知的时候,就茫然的去学语言,那无异于盲人摸象,所以我建议,学习系统语言,一定要有Linux基础后再去学习,你会发现,语言也变得容易多了。


Shell作为一门通用的系统语言,是所有运维人员都必须要了解和掌握的,通过Shell能帮助我们解决日常工作中很多重复、繁琐的工作,但是Shell的基础就是系统命令,因此,只有掌握了系统命令的原理和使用方法,Shell才能运行起来,我见过很多学Linux的朋友,他们也接触运维多年,但是对于如何执行for循环、while循环、if with [[或[、$1、$2、$3... $*和 $@ 以及case语句的使用都不会,他们迟早会为没有尽早学习BASH而自责不已。



我对Shell已经非常熟悉了,但还是找不到工作,很多单位都要求会Python或Ruby等语言,我是否还要学这些语言呢?



这个问题分为两个方面,首先从员工角度来讲,企业招聘员工是为自身服务的,交给员工的任务只要能按质保量的完成,其实已经足够了,至于通过什么语言来实现的,并不重要。可能有些企业出于习惯或传统的目的,强制要求要通过一种语言去完成所有工作,这是企业环境问题。如果每个员工都有完全依赖于企业的这种习惯,岂不是要学会所有的语言吗,显然,这并不是一种常态。


很多朋友都看过招聘信息,对语言的要求基本都是shell、python、perl等任意一个熟悉,那么也就说明对运维工作的语言要求是相对较宽泛的,我曾就职多家大型公司,对于运维的工作都有专业的任务调度管理平台,而调度管理平台上,可以支持任何语言编写的运维调度任务,因此,你无需为学习哪个语言而发愁。


然后,从职业管理的角度来看,我认为真正擅长其中一门语言,对另外其它语言有所涉猎,这是最大的竞争力,哪怕这意味着仅仅阅读介绍这些语言的书籍的头几个章节。真正擅长其中一门语言意味着,你深入了解如何运用该语言,深入了解该语言在“底层”是怎么一回事,那样你在设计更大型的程序时,就能作出更合理的决策。


我之所以把这个问题上升到职业管理问题的层面来讨论,原因在于,如果你想受雇于一家使用不同语言的公司,“成为愿意学习不同语言的专家”远比“成为只想学习大有潜力的语言”或“对这门或那门语言一知半解,但是从来没有耐心把某一门语言学好的人”来得重要。




阅读次数:883

本站推荐

猜你喜欢

相关文章

浏览器 User-Agent 字符串的故事

浏览器 User-Agent 字符串的故事

浏览器 User-Agent 字符串的故事

Android中Webview

Android中Webview

Android中Webview

Mysql基于FEDERATED存储引擎的远程表使用

Mysql基于FEDERATED存储引擎的远程表使用

Mysql基于FEDERATED存储引擎的远程表使用

有图有对比!125个提升网页可用性的优化小技巧(四)

有图有对比!125个提升网页可用性的优化小技巧(四)

有图有对比!125个提升网页可用性的优化小技巧(四)

FastReport 中预览窗体设置按钮显示

FastReport 中预览窗体设置按钮显示

FastReport 中预览窗体设置按钮显示

photoshop怎么给文字加白色边框

photoshop怎么给文字加白色边框

photoshop怎么给文字加白色边框

安装CDR X5时找不到ShellExt.msi

安装CDR X5时找不到ShellExt.msi

安装CDR X5时找不到ShellExt.msi

导出excel身份证过长导致显示不正常自定义单元格格式解决方法

导出excel身份证过长导致显示不正常自定义单元格格式解决方法

导出excel身份证过长导致显示不正常自定义单元格格式解决方法

专家教你如何通过微信号知道对方微信的二维码?

专家教你如何通过微信号知道对方微信的二维码?

专家教你如何通过微信号知道对方微信的二维码?

不懂编程语言的运维人员还能走多远?

不懂编程语言的运维人员还能走多远?

不懂编程语言的运维人员还能走多远?

socket实现手机连接网络打印机打印pos单

socket实现手机连接网络打印机打印pos单

socket实现手机连接网络打印机打印pos单

photoshop渐变中如何渐变成透明色

photoshop渐变中如何渐变成透明色

photoshop渐变中如何渐变成透明色

win10系统自带浏览器影响数字证书验证

win10系统自带浏览器影响数字证书验证

win10系统自带浏览器影响数字证书验证

解读沙盒技术的收益与风险

解读沙盒技术的收益与风险

解读沙盒技术的收益与风险