《Linux系统命令及Shell脚本实践指南》评论赠书活动

本书由浅入深、全面、系统地介绍了Linux系统的基础命令和Shell脚本的开发。作为一本面向Linux入门用户的书籍,本书力求语言通俗易懂,用例简单明了,便于读者阅读领会。同时,全书穿插了不少要求读者动手实践的内容,,不但可加深读者对内容的理解和消化,同时也可通过动手实践激发读者对Linux系统和Shell编程的兴趣,从而更好地驱动读者学习。

全书共计18章,从知识结构上分为三部分。第一部分为前8章,全面介绍了Linux的基础知识和常用命令;第二部分为第9章和第10章,主要是Linux下交互和非交互编辑器的使用;第三部分为第11~18章,主要是Shell脚本开发。这三部分内容各有偏重,读者可以根据实际需要选择阅读。

本书根据作者多年来Linux环境运维管理工作的经验编著而成,内容丰富,且注重实践讲解,非常适合Linux初学者和基于Linux平台的软件开发者学习或查阅。从内容结构上来看,本书摒弃了各章独立的写作风格,而是采取了各章有机结合的方式,自上而下自成一体,既加深了读者对单个知识点的理解,也有利于从全局把控Linux系统和Shell编程的精髓。

作者: 王军 出版社:机械工业出版社ISBN:978-7-111-44503-6出版日期:2013 年11月开本:16开定价:59.00元

为什么要写这本书

早在我还在大学校园时就对Linux产生了极大的兴趣,期间我热衷于下载、安装、体验各种不同的Linux发行版,并尝试使用Linux作为我的桌面系统。但实际情况是,由于大学中使用群体极小,学校又没有开设直接的Linux系统课程,虽然我花了不少的课余时间去研究它,但始终感觉不得其法,难以入门。至今我依然记得当时使用鼠标双击好不容易才复制桌面上的rpm包,并抱怨为什么没有出现类似于Windows的“安装向导”。所以实际上有很长一段时间,面对Linux系统我能做的少之又少。

2006年大学毕业后,我有幸进入了一直梦寐以求的IT行业,并从此正式走上了技术之路。工作中能实际接触到Linux系统运维是我在该领域发展的很重要的外部因素,工作的驱使和个人的兴趣成为我每天坚持学习Linux的源动力。但当时很尴尬的一个现实是:一方面互联网行业的高速发展促进了Linux如火如荼的发展,另一方面又很难找到真正适合“新手”的入门级教材,得到一本简单明了的入门书籍是我当时迫切的愿望。于是在走了不少弯路并感觉自己已经“迷路”之后,我报名参加了Linux系统工程师社会培训班,利用工作之余系统并完整地学习了Linux。事实证明,当时的选择是正确的,这直接影响了我至今的职业发展乃至今后的职业规划。

经历了多年的工作后,我也非常希望能有机会与大家分享自己在IT领域的体会,所以也经常在一些技术网站发表技术文章,或是与志同道合的朋友一起举办免费的网络培训班。但是总体来说,所涉及的内容大多零碎、不成体系。筹划本书的初期,我想把重点放在Linux系统管理、高性能计算、高可用集群甚至云计算这些“够时髦”的主题上,但是反复思考后觉得,“时髦”的技术永远在变,而且限制了读者范围。但是对我、对很多梦想学习Linux的读者来说这更是一个机会:用最简单、最朴素、最基础的语言讲解和描述Linux系统以及如何使用它,给更多初学者以“可以学会”的希望和“努力前行”的力量。

出于这样的考虑,我在组织本书的内容时尽量安排书的各个章节以及每章节中的每个小节,甚至是每小节中的知识点的出现顺序符合新手的认知规律,做到从易到难,从基础到提高,以循序渐进的方式将各类知识点以人物出场、层次推进的方式呈现在读者面前,尽量避免将生僻的术语突然摆在读者面前,造成读者思维上的困扰,并且尽量使用简单明了的文字和浅显易懂的比喻帮助读者理解、消化。尽管如此,我还是希望读者能在此基础上展开阅读,并根据实际需要做必要的深入理解。

总之,这是一本讲解Linux系统和Shell编程的入门级书籍,内容主要涉及Linux的基础命令、编辑器的使用和Shell脚本的开发。

读者对象

本书适合以下读者阅读:

目录推荐序1推荐序2前 言第1章 Linux简介11.1 Linux的发展历史11.2 Linux的特点21.3 系统安装31.3.1 安装前的规划31.3.2 安装RedHat41.3.3 安装CentOS111.4 系统登录161.4.1 第一次登录系统的设置161.4.2 使用图形模式登录211.4.3 使用终端模式登录231.4.4 开始学习使用Linux的命令241.5 系统启动流程251.5.1 系统引导概述251.5.2 系统运行级别261.5.3 服务启动脚本271.5.4 Grub介绍291.6 获得帮助311.6.1 使用man page311.6.2 使用info page321.6.3 其他获得帮助的方式32第2章 Linux用户管理332.1 Linux用户和用户组332.1.1 UID和GID332.1.2  /etc/passwd和/etc/shadow342.2 Linux账号管理362.2.1 新增和删除用户362.2.2 新增和删除用户组392.2.3 检查用户信息392.3 切换用户402.3.1 切换成其他用户402.3.2 用其他用户的身份执行命令:sudo412.4 例行任务管理432.4.1 单一时刻执行一次任务:at432.4.2 周期性执行任务:cron442.4.3 /etc/crontab的管理45第3章 Linux文件管理463.1 文件和目录管理463.1.1 绝对路径和相对路径473.1.2 文件的相关操作483.1.3 目录的相关操作513.1.4 文件时间戳533.2 文件和目录的权限543.2.1 查看文件或目录的权限:ls -al543.2.2 文件隐藏属性553.2.3 改变文件权限:chmod563.2.4 改变文件的拥有者:chown563.2.5 改变文件的拥有组:chgrp573.2.6 文件特殊属性:SUID/SGID/Sticky573.2.7 默认权限和umask583.2.8 查看文件类型:file603.3 查找文件603.3.1 一般查找:find613.3.2 数据库查找:locate613.3.3 查找执行文件:which/whereis623.4 文件压缩和打包633.4.1 gzip/gunzip633.4.2 tar633.4.3 bzip2633.4.4 cpio64第4章 Linux文件系统654.1 文件系统654.1.1 什么是文件系统654.1.2 ext2文件系统简介654.1.3 ext3文件系统简介664.2 磁盘分区、创建文件系统、挂载664.2.1 创建文件系统:fdisk664.2.2 磁盘挂载:mount694.2.3 设置启动自动挂载:/etc/fstab704.2.4  磁盘检验:fsck、badblocks704.3 Linux逻辑卷714.3.1 什么是逻辑卷714.3.2 如何制作逻辑卷724.4 硬链接和软链接764.4.1 什么是硬链接764.4.2 什么是软链接77第5章 字符处理795.1 管道795.2 使用grep搜索文本795.3 使用sort排序805.4 使用uniq删除重复内容825.5 使用cut截取文本825.6 使用tr做文本转换835.7 使用paste做文本合并845.8 使用split分割大文件84第6章 网络管理866.1 网络接口配置866.1.1 使用ifconfig检查和配置网卡866.1.2 将IP配置信息写入配置文件876.2 路由和网关设置886.3 DNS客户端配置896.3.1 /etc/hosts896.3.2 /etc/resolv.conf906.4 网络测试工具906.4.1 ping906.4.2 host916.4.3 traceroute916.4.4 常见网络故障排查92第7章 进程管理947.1 什么是进程947.2 进程和程序的区别957.3 进程的观察:ps、top957.4 进程的终止:kill、killall987.5 查询进程打开的文件:lsof997.6 进程优先级调整:nice、renice101第8章 Linux下的软件安装1038.1 源码包编译安装1038.1.1 编译、安装、打印HelloWorld程序1038.1.2 使用源码包编译安装Apache1068.2 RPM安装软件1088.2.1 什么是RPM1088.2.2 RPM包管理命令:rpm1098.2.3 包依赖关系1108.2.4 使用RPM包安装gcc1108.2.5 使用RPM包安装Apache1128.3 yum安装软件1148.3.1 yum命令的基本用法1148.3.2 使用yum安装Apache1158.3.3 RedHat使用yum的问题1158.3.4 自建本地yum源1188.3.5 自建网络yum源1218.4 三种安装方法的比较1238.5 重建RPM包1248.5.1 创建重建环境1248.5.2 快速重建RPM包1248.5.3 以spec文件重建RPM包1258.5.4 spec文件简介126第9章 vi和vim编辑器1299.1 vi和vim编辑器简介1299.2 vi编辑器1299.2.1 模式介绍1299.2.2 案例练习1309.3 vim编辑器1349.3.1 多行编辑1349.3.2 多文件编辑1349.3.3 使用vimtutor深入学习vim1369.4 gedit编辑器1379.4.1 gedit编辑器简介1379.4.2 启动gedit编辑器138第10章 正则表达式13910.1 正则表达式基础13910.1.1 什么是正则表达式13910.1.2 基础的正则表达式14010.1.3 扩展的正则表达式14310.1.4 通配符14410.2 正则表达式示例14610.3 文本处理工具sed15010.3.1 sed介绍15010.3.2 删除15110.3.3 查找替换15210.3.4 字符转换15310.3.5 插入文本15310.3.6 读入文本15410.3.7 打印15410.3.8 写文件15410.3.9 sed脚本15510.3.10 高级替换15510.3.11 sed总结15610.4 文本处理工具awk15710.4.1 打印指定域15810.4.2 指定打印分隔符15810.4.3 内部变量NF15910.4.4 打印固定域15910.4.5 截取字符串15910.4.6 确定字符串的长度16010.4.7 使用awk求列和160第11章 Shell编程概述16111.1 Shell简介16111.1.1 Shell是什么16111.1.2 Shell的历史16311.1.3 Shell的功能16411.1.4 Shell编程的优势16411.2 第一个Shell脚本16411.2.1 编辑第一个Shell脚本16411.2.2 运行脚本16511.2.3 Shell脚本的排错16611.3 Shell的内建命令169第12章 Bash Shell的安装18412.1 确定你的Shell版本18412.2 安装bash18412.3 使用新版本的Bash Shell18612.4 在Windows中安装bash187第13章 Shell编程基础19113.1 变量19113.1.1 局部变量19113.1.2 环境变量19113.1.3 变量命名19713.1.4 变量赋值和取值19813.1.5 取消变量19913.1.6 特殊变量19913.1.7 数组20013.1.8 只读变量20213.1.9 变量的作用域20313.2 转义和引用20513.2.1 转义20513.2.2 引用20613.2.3 命令替换20713.3 运算符20813.3.1 算术运算符20913.3.2 位运算符20913.3.3 自增自减21113.4 其他算术运算21113.4.1 使用$[]做运算21113.4.2 使用expr做运算21213.4.3 内建运算命令declare21213.4.4 算术扩展21313.4.5 使用bc做运算21313.5 特殊字符21513.5.1 通配符21513.5.2 引号21513.5.3 注释符21513.5.4 大括号21613.5.5 控制字符21713.5.6 杂项217第14章 测试和判断21814.1 测试21814.1.1 测试结构21814.1.2 文件测试21914.1.3 字符串测试22014.1.4 整数比较22214.1.5 逻辑测试符和逻辑运算符22314.2 判断22414.2.1 if判断结构22414.2.2 if/else判断结构22514.2.3 if/elif/else判断结构22614.2.4 case判断结构227第15章 循环22915.1 for循环22915.1.1 带列表的for循环22915.1.2 不带列表的for循环23115.1.3 类C的for循环23215.1.4 for的无限循环23315.2 while循环23415.2.1 while循环的语法23415.2.2 使用while按行读取文件23515.2.3 while的无限循环23615.3 until循环23715.3.1 until循环的语法23715.3.2 until的无限循环23815.4 select循环23815.5 嵌套循环23915.6 循环控制24115.6.1 break语句24115.6.2 continue语句241第16章 函数24316.1 函数的基本知识24316.1.1 函数的定义和调用24316.1.2 函数的返回值24416.2 带参数的函数24616.2.1 位置参数24616.2.2 指定位置参数值24716.2.3 移动位置参数24816.3 函数库24916.3.1 自定义函数库24916.3.2 函数库/etc/init.d/functions简介24916.4 递归函数251第17章 重定向25517.1 重定向简介25517.1.1 重定向的基本概念25517.1.2 文件标识符和标准输入输出25517.2 I/O重定向25517.2.1 I/O重定向符号和用法25517.2.2 使用exec26017.2.3 Here Document262第18章 脚本范例26318.1 批量添加用户脚本26318.2 检测服务器存活26618.3 使用expect实现自动化输入26818.4 自动登录ftp备份27018.5 文件安全检测脚本27218.6 ssh自动登录备份27318.7 使用rsync备份27518.8 使用netcat备份27718.9 使用iptables建立防火墙27918.10 自定义开机启动项的init脚本28218.11 使用脚本操作MySQL数据库28618.12 基于LVM快照的MySQL数据库备份28818.13 页面自动化安装LAMP环境291

样章地址:

购买链接:

活动内容

活动时间:2013年12月20日-12月31日

活动奖品:

活动结束后,我们会评选出5位积极参与评论的网友奖励《Linux系统命令及Shell脚本实践指南》图书1本。

活动要求:

1、 在Linux中国()对本书进行评论,要言之有物,不能低于20个字。

2、 本次话题主要关注Linux命令及Shell编程技术的讨论,以及对本书样章内容的评论。

发光并非太阳的专利,你也可以发光

《Linux系统命令及Shell脚本实践指南》评论赠书活动

相关文章:

你感兴趣的文章:

标签云: