学好Shell的几大步骤:
1、能够熟练使用vim编辑器,熟悉SSH终端及“.vimrc”等的配置
2、要有一定的Linux命令基础,至少需要掌握80个以上Linux常用命令,并能够熟练使用它
3、要熟练掌握Linux正则表达式及三剑客命令(grep、sed、awk)
4、熟悉常见的Linux网络服务部署、优化、日志分析及排错
需要掌握的基础网络服务包括但不限于:Crond、Rsync、Inotify、Nginx、PHP、MySQL、Keepalived、Memcached、Redis、NFS、Iptables、SVN、Git
如何才能学好Shell编程之“老鸟”经验谈:
1、掌握Shell脚本基本语法的方法
最简单有效的方法就是将语法敲n+1遍。为什么不是n遍呢?因为这里的n指的是你刚开始为掌握语法而练习的那些天(21天法则),而1则是指在确定掌握语法后每天都要写一写、想一想,至少是要看一看,保持一个与Shell脚本接触的热度。
2、掌握Shell脚本的各种常见语法
要掌握各类条件表达式、if多种判断、for循环的不同用法、While多种读文件的循环等,这样做不是为了什么都学会,而是为了能够看懂别人写的代码。掌握常见的各种语法,也就是要经常写,而且要持续写一段时间(让动作定型,在大脑和肌肉里都打上深刻烙印),各种语法都要用
3、形成自己的脚本开发风格
4、从简单做起,简单判断,简单循环
初学者一定要从简单做起,最小化代码学习,简单判断,简单循环,简单案例练习,所有的大程序都是由多个小程序组成的
5、多模仿,多放下参考资料练习,多思考
6、学会分析问题,逐渐形成编程思维
在编写程序或脚本时,先将需求理解透,对大的需求进行分解,逐步形成小的程序或模块,然后再开发,或者先分析最终需求的基础实现,最后逐步扩展批量实现。
例如:在编写批量关闭不需要自启动服务的脚本时,就采用了这种分析方法,思路如下:
1)掌握关闭一个服务的命令,即“chkconfig服务名off”。
2)批量处理时,会有多个服务名,那么就要用到多条以上的命令。
3)仔细分析以上命令,会发现需要处理的所有命令中,只有“服务名”不同,其他地方都一样,那么自然就会想到用循环语句来处理
7、编程变量名字要规范,采用驼峰语法表示
oldboyAgeName用的就是驼峰表示法。记住,在学习的初期,不要去看大的脚本,要从小问题和小的方面着手,当你觉得小的判断、循环等在你的脑子里瞬间就能出来时,再开始去看和写大的脚本,进行深入练习
8、不要拿来主义,特别是新手
无论是看书还是学习视频,都要自己完成学习笔记及代码的书写,这本身就是最重要的学习过程,在学习上要肯于花时间和精力,而不是投机取巧