Sim*_*ett 37
答案是:无论什么最适合这份工作!
我的经验法则;
Bash - 一个简短的脚本,可能需要一个for循环来重复执行某些操作.
Perl - 与某种文本处理或文件处理有关的任何事情,特别是如果它是一次性的.只做一个肮脏讨厌的perl脚本并完成它
Python - 如果你想再做一些事情或者非常喜欢它.那么至少你有机会重用脚本.
转到所有这三个,从bash/awk/sed加上fileutils(grep,find等)开始,然后使用perl和python向上移动抽象层次结构.
这样您就可以自己决定哪一个最适合您的需求.我说从bash和朋友开始,因为它们无处不在,有些机器不会安装perl或python,你会感到无助,特别是在传统的unix领域(即不是linux)
在选择脚本语言来帮助自动化你的linux/unix环境时,我认为最重要的是......你的替代品:-)
我指的是可能需要维护脚本的下一个/其他系统管理员.我目前正在一个领先的Unix家伙是一个真正的脚本头的环境中工作,但是他主要限制自己使用bash,为了好运,引入了一些perl和windows vbscript.至少它迫使我刷我的perl.
虽然在这里同意其他评论,但我的建议是掌握bash - 尽可能在bash中做,就像大多数人都知道的那样,并且可以维护/调试它.它将是最便携的.与sed和awk一起使用尤其强大.
当你掌握了这些知识后,你可以回到这里问"在bash之后我应该学习什么脚本语言?" :-)
JB
小智 5
除了极其简单的脚本之外,我还使用 Perl 来处理任何事情。
我也'use warnings'
,,'use strict'
避免反引号,将系统称为'system($command, @and_args)'
。因为我喜欢它是可维护的:IPC::Run(用于管道)、File::Fu(用于文件名、临时文件等)、YAML(用于配置或杂项数据)和 Getopt::Helpful(所以我记得有哪些选项。)