社区
实用资料发布区
帖子详情
Linux C编程一站式学习,高级shell Bash脚本编程指南,
夏天__
2012-07-25 03:26:32
Linux C编程一站式学习下载
高级Bash脚本编程指南,一本深入学习shell脚本艺术的书籍下载
...全文
373
8
打赏
收藏
Linux C编程一站式学习,高级shell Bash脚本编程指南,
Linux C编程一站式学习下载 高级Bash脚本编程指南,一本深入学习shell脚本艺术的书籍下载
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
夏天__
2012-07-26
打赏
举报
回复
[Quote=引用 4 楼 的回复:]
不错。
[/Quote]
帅得不敢出门
2012-07-26
打赏
举报
回复
不错。
夏天__
2012-07-26
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
感谢、
[/Quote]
不谢。
qq120848369
2012-07-25
打赏
举报
回复
感谢、
夏天__
2012-07-25
打赏
举报
回复
Linux C编程一站式学习
本书包括三大部分:
C语言入门。介绍基本的C语法,帮助没有任何编程经验的读者理解什么是程序,怎么写程序,培养程序员的思维习惯,找到编程的感觉。前半部分改编自[ThinkCpp]。
C语言本质。结合计算机和操作系统的原理讲解C程序是怎么编译、链接、运行的,同时全面介绍C的语法。位运算的章节改编自亚嵌教育林小竹老师的讲义,链表和二叉树的章节改编自亚嵌教育朱老师的讲义。汇编语言的章节改编自[GroudUp],在该书的最后一章提到,学习编程有两种Approach,一种是Bottom Up,一种是Top Down,各有优缺点,需要两者结合起来。所以我编这本书的思路是,第一部分Top Down,第二部分Bottom Up,第三部分可以算填了中间的空隙,三部分全都围绕C语言展开。
Linux系统编程。介绍各种Linux系统函数和内核的工作原理。Socket编程的章节改编自亚嵌教育卫剑钒老师的讲义。
这本书定位在入门级,虽然内容很多,但不是一本百科全书,除了C语言基本要讲透之外其它内容都不深入,书中列出了很多参考资料,是读者进一步学习的起点。K&R的第一章是一个Whirlwind Tour,把全书的内容简单过了一遍,然后再逐个深入进去讲解。本书也可以看作是计算机专业课程体系的一个Whirlwind Tour,学习完本书之后有了一个全局观,再去学习那些参考资料就应该很容易上手了。
高级Bash脚本编程指南: 一本深入学习shell脚本艺术的书籍
前一页 下一页
1. 为什么使用shell编程?
没有程序语言是完美的. 甚至没有一个唯一最好的语言, 只有对于特定目的, 比较适合和不适合的程序语言.
Herbert Mayer
对于任何想适当精通一些系统管理知识的人来说, 掌握shell脚本知识都是最基本的, 即使这些人可能并不打算真正的编写一些脚本. 想一下Linux机器的启动过程, 在这个过程中, 必将运行/etc/rc.d目录下的脚本来存储系统配置和建立服务. 详细的理解这些启动脚本对于分析系统的行为是非常重要的, 并且有时候可能必须修改它.
学习如何编写shell脚本并不是一件很困难的事, 因为脚本可以分为很小的块, 并且相对于shell特性的操作和选项 [1]部分,只需要学习很小的一部分就可以了. 语法是简单并且直观的, 编写脚本很像是在命令行上把一些相关命令和工具连接起来, 并且只有很少的一部分"规则"需要学习. 绝大部分脚本第一次就可以正常的工作, 而且即使调试一个长一些的脚本也是很直观的.
一个shell脚本是一个类似于"小吃店的(quick and dirty)"方法, 在你使用原型设计一个复杂的应用的时候. 在工程开发的第一阶段, 即使从功能中取得很有限的一个子集放到shell脚本中来完成往往都是非常有用的. 使用这种方法, 程序的结果可以被测试和尝试运行, 并且在处理使用诸如C/C++, Java或者Perl语言编写的最终代码前, 主要的缺陷和陷阱往往就被发现了.
Shell脚本遵循典型的UNIX哲学, 就是把大的复杂的工程分成小规模的子任务, 并且把这些部件和工具组合起来. 许多人认为这种办法更好一些, 至少这种办法比使用那种高\大\全的语言更美, 更愉悦, 更适合解决问题. 比如Perl就是这种能干任何事能适合任何人的语言, 但是代价就是你需要强迫自己使用这种语言来思考解决问题的办法.
什么时候不适合使用Shell脚本
资源密集型的任务, 尤其在需要考虑效率时(比如, 排序, hash等等).
需要处理大任务的数学操作, 尤其是浮点运算, 精确运算, 或者复杂的算术运算(这种情况一般使用C++或FORTRAN来处理).
有跨平台移植需求(一般使用C或Java).
复杂的应用, 在必须使用结构化编程的时候(需要变量的类型检查, 函数原型, 等等).
至关重要的应用, 比如说为了这个应用, 你需要赌上自己的农场, 甚至赌上你们公司的未来.
对于安全有很高要求的任务, 比如你需要一个健壮的系统来防止入侵, 破解, 恶意破坏等等.
工程的每个组成部分之间, 需要连锁的依赖性.
需要大规模的文件操作(Bash受限于顺序地进行文件访问, 而且只能使用这种笨拙的效率低下的一行接一行的处理方式. ).
需要多维数组的支持.
需要数据结构的支持,比如链表或数组等数据结构.
需要产生或操作图形化界面GUI.
需要直接操作系统硬件.
需要I/O或socket接口.
需要使用库或者遗留下来的旧代码的接口.
个人的, 闭源的应用(shell脚本把代码就放在文本文件中, 全世界都能看到).
如果你的应用符合上边的任意一条, 那么就考虑一下更强大的语言吧--或许是Perl, Tcl, Python, Ruby -- 或者是更高层次的编译语言比如C/C++, 或者是Java. 即使如此, 你会发现, 使用shell来原型开发你的应用, 在开发步骤中也是非常有用的.
我们将开始使用Bash, Bash是"Bourne-Again shell"首字母的缩写, 也是Stephen Bourne的经典的Bourne shell的一个双关语, (译者: 说实话, 我一直搞不清这个双关语是什么意思, 为什么叫"Bourn-Again shell", 这其中应该有个什么典故吧, 哪位好心, 告诉我一下^^). 对于所有UNIX上的shell脚本来说, Bash已经成为了事实上的标准了. 同时这本书也覆盖了绝大部分的其他一些shell的原则, 比如Korn Shell, Bash从ksh中继承了一部分特性, [2] C Shell和它的变种. (注意: C Shell编程是不被推荐的, 因为一些特定的内在问题, Tom Christiansen在1993年10月上的Usenet post指出了这个问题).
接下来是脚本的一些说明. 在展示shell不同的特征之前, 它可以减轻一些阅读书中例子的负担. 本书中的例子脚本, 都在尽可能的范围内进行了测试, 并且其中的一些将使用在真实的生活中. 读者可以运行这些例子脚本(使用scriptname.sh或者scriptname.bash的形式), [3] 并给这些脚本执行权限(chmod u+rx scriptname), 然后执行它们, 看看发生了什么. 如果你没有相应的源代码, 那么就从本书的 HTML, pdf, 或者text版本中将这些源代码拷贝出来. 考虑到这些脚本中的内容在我们还没解释它之前就被列在这里, 可能会影响读者的理解, 这就需要读者暂时忽略这些内容.
除非特别注明, 本书作者编写了本书中的绝大部分例子脚本.
Linux
C
一站式
学习
Linux
系统
编程
28. 文件与I/O 1. 汇
编程
序的Hello world 2. C标准I/O库函数与Unbuffered I/O函数 3. open/close 4. read/write 5. lseek 6. fcntl 7. ioctl 8. mmap 29. 文件系统 1. 引言 2. ext2文件系统 2.1. 总体...
宋劲彬的嵌入式C语言
一站式
编程
目录 历史 前言 I. C语言入门 1. 程序的基本概念 1. 程序和
编程
语言 2. 自然语言和形式语言 ...3. 在
Linux
C
编程
中使用Unicode和UTF-8 B. GNU Free Documentation License Version 1.3, 3 November 2008 参考书目 索引
Linux
Bash
Shell
脚本
编程
视频课程
基于GNU
Bash
manual 英文手册原版进行研发 ( 能够帮助您更好的系统
学习
Linux
Bash
Shell
脚本
编程
) 通过这个课程能够学到什么?
学习
L:inux
Bash
Shell
脚本
编程
视频课程,您将能够掌握以下...
installer:
一站式
安装Github版本的二进制文件
安装程序是一个HTTP服务器,它返回
shell
脚本
。 返回的
脚本
将检测平台操作系统和体系结构,从URL的选择中进行选择,下载适当的文件,取消(zip | tar | gzip)文件,找到二进制文件(最大的文件),然后选择将其移动...
aws-virtual-bastion:EC2实例的基于Web的终端,不需要SSH或任何其他入站连接。 相反,它使用AWS Systems Manager(SSM)API运行命令(
bash
或power
shell
)
一次在多个实例上执行命令/
脚本
,就像同时进行多个终端会话一样。 在S3中自动记录所有命令及其输出。 这个怎么运作 虚拟堡垒(ssmTerminal)依赖于AWS Systems Manager(SSM)服务。 要使用该服务,实例需要...
实用资料发布区
3,286
社区成员
2,297
社区内容
发帖
与我相关
我的任务
实用资料发布区
Linux/Unix社区 实用资料发布区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 实用资料发布区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章