1:shell简介
shell提供了用户和内核进行交互操作的一种接口,它接收用户的命令并送入内核执行。
shell脚本语言是linux/unix系统上应用广泛的实用程序设计语言,所以对于任何一个希望精通linux操作系统的人,掌握shell脚本知识都是非常必要的。而它的特点是容易学习,但是精通很难,因为不仅需要熟悉shell脚本的语法结构和常用工具,而且要清晰的掌握linux重要命令的语法。所以,学习shell语法的同时,加强对linux命令行的学习很有帮助。
常见的shell大致有三种,一是bourne-again shell(bash),所有的linux系统都提供这种shell。它被设计成遵循POSIX标准,同时也保留了与bourne shell的兼容性;第二个是Korn shell,它是Bourne Shell的后继者,由贝尔实验室研发;第三个是C shell ,C shell是由伯克利开发的,所有的BSD操作系统都提供这种shell。我们在linux下一般都是默认使用bash。
2:编写执行shell脚本
第一步:使用编辑器(例如Emacs,可以打开shell-script-mode)编写shell脚本,例子如下:
#!/bin/sh
echo "hello world !"
exit 0
第二步:使用chmod命令提升脚本的执行权限。
lishuo@lishuo-Rev-1-0:~/audio$ chmod u+x a
第三步:执行shell脚本
lishuo@lishuo-Rev-1-0:~/audio$ ./a
hello world !
3:shell的学习方式
第一步,学习最基本的linux命令行工具,比如echo,cp,mv,rm等最基本的文件操作命令以及重定向管道文件描述符等基本概念;
第二步,开始学习shell的语法结构,并能够结合基本的linux命令编写一些小型的shell脚本,比如粉碎某个文件(使用dd,rm,ls和重定向);
第三步,系统学习linux下命令行工具的使用,这个时候可以找一本讲解命令行的书专门学习,然后写成shell脚本实现新功能;
第四步,这是我非常喜欢的学习策略,就是总结概括先前的知识点,从全局的角度认识shell和linux命令行,这个时候可以写成一个文章系列放到自己的博客(博客是一个沉淀知识,积累智慧的地方);
最后,找一本精讲shell的书,比如精通uinx shell编程,这个时候就是翻看书中不会或者不熟悉的方面,以更加系统的方式来查漏补缺。
阅读(2904) | 评论(0) | 转发(0) |