其实学习shell命令是每个linuxer的必修课,即使我们不想使用shell但是学习一些shell命令或者编程对你在linux下面工作玩耍都会有巨大的好处,这些是你在使用linux系统的时候慢慢体会到的。另外这些命令和规则都是很简单的。
我们在什么时候需要使用shell编程呢?
这个没有具体的回答,我的感觉就是当你需要做大量的重复性工作的时候,特别是数量极大,所以没有人想移动鼠标、点击、移动鼠标、点击的不断重复,而写一个其他语言的程序又是那么的麻烦,shell编一个bash来做这些是最适合不过的了。另一个,当我们需要工作自动化的时候就需要bash脚本,特别是连续的相似的工作,可能连续工作几个小时甚至是几天,这时候写一个脚本来让它自动工作是再惬意不过的了。当然还有很多简单的复杂的工作都适合bash脚本。
当然它有自己的缺点,当你有以下的要求的时候,你就得选择其他的语言来编写:
资源密集型的任务,尤其在需要考虑效率时(比如,排序,hash等等)
需要处理大任务的数学操作,尤其是浮点运算,精确运算,或者复杂的算术运算
(这种情况一般使用C++或FORTRAN来处理)
有跨平台移植需求(一般使用C或Java)
复杂的应用,在必须使用结构化编程的时候(需要变量的类型检查,函数原型,等等)
对于影响系统全局性的关键任务应用。
对于安全有很高要求的任务,比如你需要一个健壮的系统来防止入侵,破解,恶意破坏等等.
项目由连串的依赖的各个部分组成。
需要大规模的文件操作
需要多维数组的支持
需要数据结构的支持,比如链表或数等数据结构
需要产生或操作图形化界面GUI
需要直接操作系统硬件
需要I/O或socket接口
需要使用库或者遗留下来的老代码的接口
私人的,闭源的应用(shell脚本把代码就放在文本文件中,全世界都能看到)
我看了这两份教程,当然没有仔细的研读也没有写一些脚本来实验,仅仅是浏览,这两份教程真的都很不错
一份是英文版的,从前入深,很是入门,但是不知道有没有中文版的
http://gd.tuwien.ac.at/linuxcommand.org/learning_the_shell.php
另一份是入门的经典,学习shell编程必看的教程
里面有大量的例子和思考习题
http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=296299
我们在什么时候需要使用shell编程呢?
这个没有具体的回答,我的感觉就是当你需要做大量的重复性工作的时候,特别是数量极大,所以没有人想移动鼠标、点击、移动鼠标、点击的不断重复,而写一个其他语言的程序又是那么的麻烦,shell编一个bash来做这些是最适合不过的了。另一个,当我们需要工作自动化的时候就需要bash脚本,特别是连续的相似的工作,可能连续工作几个小时甚至是几天,这时候写一个脚本来让它自动工作是再惬意不过的了。当然还有很多简单的复杂的工作都适合bash脚本。
当然它有自己的缺点,当你有以下的要求的时候,你就得选择其他的语言来编写:
资源密集型的任务,尤其在需要考虑效率时(比如,排序,hash等等)
需要处理大任务的数学操作,尤其是浮点运算,精确运算,或者复杂的算术运算
(这种情况一般使用C++或FORTRAN来处理)
有跨平台移植需求(一般使用C或Java)
复杂的应用,在必须使用结构化编程的时候(需要变量的类型检查,函数原型,等等)
对于影响系统全局性的关键任务应用。
对于安全有很高要求的任务,比如你需要一个健壮的系统来防止入侵,破解,恶意破坏等等.
项目由连串的依赖的各个部分组成。
需要大规模的文件操作
需要多维数组的支持
需要数据结构的支持,比如链表或数等数据结构
需要产生或操作图形化界面GUI
需要直接操作系统硬件
需要I/O或socket接口
需要使用库或者遗留下来的老代码的接口
私人的,闭源的应用(shell脚本把代码就放在文本文件中,全世界都能看到)
我看了这两份教程,当然没有仔细的研读也没有写一些脚本来实验,仅仅是浏览,这两份教程真的都很不错
一份是英文版的,从前入深,很是入门,但是不知道有没有中文版的
http://gd.tuwien.ac.at/linuxcommand.org/learning_the_shell.php
另一份是入门的经典,学习shell编程必看的教程
里面有大量的例子和思考习题
http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=296299