加入收藏 | 设为首页 | 会员中心 | 我要投稿 天瑞地安资讯网 (https://www.52baoding.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

《Linux命令行与shell编程实战(第4版)》

发布时间:2022-11-19 14:03:24 所属栏目:Unix 来源:未知
导读: 前 言Linux 《Linux命令行与shell编程实战(第4版)》阐述如何通过命令行方式使用Linux操作系统。《Linux命令行与shell编程实战(第4版)》前几章介绍Linux基础知识。后面部分则介绍更后面

前 言Linux 《Linux命令行与shell编程实战(第4版)》阐述如何通过命令行方式使用Linux操作系统。《Linux命令行与shell编程实战(第4版)》前几章介绍Linux基础知识。后面部分则介绍更后面的主题,详细阐述相关技术。《Linux命令行与shell编程实战(第4版)》并不针对特定的Linux版本或者某个发行版,而是适用于所有近期发布的Linux版本。macOS 《Linux命令行与shell编程实战(第4版)》还解释如何使用macOS的UNIX/Linux基本功能。这部分内容“直奔主题”,跳过了大多数人经常与Macintosh联系在一起的传统图形用户界面(GUI),讨论如何使用与macOS直接相连的强大命令行界面(CLI)。在《Linux命令行与shell编程实战(第4版)》中提到Linux之处,也隐含了macOS,并指出了这两种操作系统之间的区别。命令行界面(CLI) 在计算机诞生之初,只有命令行(文本)界面(Command Line Interface,CLI),可通过命令行向Linux输入命令。那时还没有鼠标和图标,也就不能通过拖放方式进行操作。某些程序(如emacs)使用ASCII字符集中非常有限的图形字符实现了基本的窗口。

反白显示技术可将计算机屏幕分成几个区域。Linux就是在这样的环境中诞生和发展起来的。很自然地,早期的所有Linux实用程序都通过命令行方式调用。Linux的真正功能还体现在这样的环境中,这也是很多Linux专家非命令行不用的原因。《Linux命令行与shell编程实战(第4版)》通过清晰的阐述和详细的示例,向读者展示了如何通过命令行方式最高效地使用Linux系统。Linux发行版 Linux发行版包括Linux内核、实用程序以及应用程序。目前已有多个发行版,包括Ubuntu、Fedora、openSUSE、Red Hat、Debian、Mageia、Arch、CentOS、Solus和Mint等。尽管这些发行版之间有各种差异,但它们都依赖于Linux内核、实用程序和应用程序。《Linux命令行与shell编程实战(第4版)》阐述的内容将基于那些在绝大多数发行版上通用的代码。因此,无论使用的Linux发行版是什么,读者都可以使用这些程序。内容重叠 如果读者读过Mark G. Sobell撰写的其他书籍,如A Practical Guide to Fedora and Red Hat Enterprise Linux或A Practical Guide to Ubuntu Linux,或者读过Matthew Helmke撰写的Ubuntu Unleashed 或The Official Ubuntu Book,会发现这些书籍的内容和《Linux命令行与shell编程实战(第4版)》有所重叠。

这些书籍介绍的一些信息是相似的,但针对每《Linux命令行与shell编程实战(第4版)》的预期读者,从不同角度、在不同深度呈现技术信息。面向读者 《Linux命令行与shell编程实战(第4版)》面向不同层次的读者。尽管具备一些使用计算机的经验将有助于读者更好地理解《Linux命令行与shell编程实战(第4版)》的内容,但《Linux命令行与shell编程实战(第4版)》不要求读者具备编程经验。《Linux命令行与shell编程实战(第4版)》适合于下列读者:●学生 上课时要用到Linux或macOS。●高级用户 希望学习如何通过命令行探究Linux或macOS的功能。●专家 日常工作中使用Linux或macOS。●Macintosh新用户 希望了解UNIX/Linux是什么,为什么每个人都说它很重要,以及如何使用它。●有经验的Macintosh用户 希望知道如何利用作为macOS的基础的UNIX/Linux功能。●UNIX用户 希望把他们的UNIX技巧应用于Linux或macOS环境。●系统管理员 需要对Linux或macOS和可用的实用程序进行更深入的理解,包括bash、Perl和Python脚本语言。

●Web开发人员 需要透彻理解Linux,包括Perl和Python。●计算机系的学生 他们需要学习Linux或macOS操作系统。●程序员 需要理解Linux或macOS编程环境。●技术主管 需要学习Linux或macOS基础知识。优势 《Linux命令行与shell编程实战(第4版)》将使读者对如何通过命令行使用Linux和macOS有深入的认识。无论读者的背景如何,《Linux命令行与shell编程实战(第4版)》都将为读者提供工作中将用到的知识:通过《Linux命令行与shell编程实战(第4版)》,读者将学会如何使用Linux/macOS,并且在未来数年中,《Linux命令行与shell编程实战(第4版)》都将是一本有用的参考书。Macintosh系统有大量可用的免费软件。另外,Macintosh共享软件社区也非常活跃。《Linux命令行与shell编程实战(第4版)》介绍了macOS的UNIX/Linux方面,为Macintosh用户使用可用于Linux和其他类UNIX系统的大量免费或低成本软件铺平了道路。《Linux命令行与shell编程实战(第4版)》中的Linux表示Linux和macOS 提示UNIX操作系统是Linux和macOS的共同祖先,尽管这两种操作系统的图形用户界面(GUI)显著不同,但命令行界面(CLI)非常类似,在许多方面都相同。

《Linux命令行与shell编程实战(第4版)》描述了Linux和macOS的CLI。为便于阅读,《Linux命令行与shell编程实战(第4版)》使用Linux表示Linux和macOS,并明确标注出这两种操作系统的不同之处。《Linux命令行与shell编程实战(第4版)》特色《Linux命令行与shell编程实战(第4版)》经过精心组织,以便读者在不同的条件下都可以方便地阅读。例如,读者可逐页阅读《Linux命令行与shell编程实战(第4版)》,从基本内容开始学习Linux命令行。此外,一旦读者能熟练使用Linuxunix编程艺术,《Linux命令行与shell编程实战(第4版)》就会成为一本参考书:从目录中查找感兴趣的部分,然后开始阅读。也可以查阅《Linux命令行与shell编程实战(第4版)》第Ⅵ部分包含的实用程序。读者还可将《Linux命令行与shell编程实战(第4版)》作为Linux主题的目录:翻阅《Linux命令行与shell编程实战(第4版)》,直至找到想看的主题。《Linux命令行与shell编程实战(第4版)》还给出很多Web站点的链接,供读者获取其他信息:可将Internet视为《Linux命令行与shell编程实战(第4版)》内容的延伸。

《Linux命令行与shell编程实战(第4版)》具有以下特色:●可选章节允许读者在不同阶段阅读《Linux命令行与shell编程实战(第4版)》,当读者可解决更复杂的问题时再回头阅读。●针对那些容易出错的地方,《Linux命令行与shell编程实战(第4版)》将突出显示警告框,这样就可在读者遇到麻烦之前给予指导。●《Linux命令行与shell编程实战(第4版)》中一些突出的提示框将提示读者用不同的方式更高效地完成某个任务;或者这些内容很有用,或者仅为读者提供一些有趣的信息。●安全提示框指出可使系统更安全的方法。●每章以“本章要点”开始,其中列出阅读完该章之后读者能完成的重要任务。●整《Linux命令行与shell编程实战(第4版)》都穿插实例来讲解各种概念。●书中包含许多有用的URL(Internet地址),读者可从这些网站找到软件和相关信息。●每章都有“本章小结”,用于回顾相应章包含的重要知识点。●每章末尾都有练习题,可帮助读者巩固所学技能。在网站上有偶数编号练习题的答案。●《Linux命令行与shell编程实战(第4版)》详细描述了一些重要的GNU工具,如gcc、GNU配置和构建系统、make、gzip以及其他很多实用程序。

●《Linux命令行与shell编程实战(第4版)》还包含一些有用的链接,有助于读者从很多资源(包括本地系统和Internet)获取联机文档。●详细介绍苹果公司专门为macOS开发的重要命令行实用程序,包括diskutil、ditto、dscl、GetFileInfo、launchctl、otool、plutil和SetFile。●描述macOS的一些扩展属性,包括文件派生、文件属性、属性标记和访问控制列表(Access Control List,ACL)。●附录D列出了macOS和Linux的一些区别。《Linux命令行与shell编程实战(第4版)》内容下面将描述每章包含的内容,并解释这些信息如何有助于利用Linux的功能。可浏览目录以获取更详细的信息。第1章 欢迎进入Linux和macOS世界第1章介绍Linux和macOS的背景知识,包括Linux的历史,描述了macOS的Mach内核,阐述了GNU项目如何帮助启动Linux,并讨论Linux区别于其他操作系统的一些重要特性。第Ⅰ部分:Linux和macOS操作系统工作经验丰富的用户可能希望跳过第Ⅰ部分提示如果读者以前用过UNIX或Linux系统,可能想直接跳过第Ⅰ部分的部分章节或者全部章节。

所有读者都应该看一下2.1节“《Linux命令行与shell编程实战(第4版)》约定”(其中解释了《Linux命令行与shell编程实战(第4版)》使用的排版约定)以及2.5节(可找到Linux文档的本地资源和远程资源)。第Ⅰ部分介绍Linux并指导读者开始使用它。第2章 入门第2章解释《Linux命令行与shell编程实战(第4版)》使用的版式约定。这些版式使得描述更加清晰,更便于读者阅读。该章给出了一些基本知识,并解释如何登录系统和修改密码,还讲述了在shell中输入Linux命令以及查找系统文档的方法。第3章 实用程序第3章讲解命令行界面(CLI),并简要介绍超过30个的命令行实用程序。阅读该章,读者将对Linux有一个认识,同时该章还介绍日常使用的一些工具和实用程序。第Ⅵ部分进一步讨论实用程序。该章介绍的实用程序包括:●grep 在文件中搜索字符串。●unix2dos 将Linux文本文件转换成Windows格式。●tar 创建包含其他多个文件的存档文件。●bzip2和gzip 压缩文件以节省磁盘空间,并可在网络上更快地传输数据。●diff 显示两个文本文件之间的差异。

第4章 Linux文件系统第4章讨论Linux层次结构的文件系统,包括文件、文件名、路径名、使用目录、访问权限、硬链接和符号链接。理解文件系统将有助于组织数据,以便快速地查找信息。还可与其他用户共享某些文件,同时保持其他文件为私有文件。第5章 shell第5章阐述如何使用shell的特性,以便更高效、便捷地工作。该章讲述的所有功能可用于bash和tcsh。该章将讨论:●使用命令行选项改变某条命令的工作方式。●如何在命令行中进行少量修改就可将一条命令的输入从键盘重定向到文件。●如何将命令行的输出从屏幕重定向到文件。●使用管道将一个实用程序的输出直接发送到另一个实用程序,以便用命令行解决问题。●在后台运行程序,这样Linux就可在执行一个任务的情况下,同时执行另一个任务。●使用shell自动生成文件名,以节省输入时间,同时在用户不记得文件的精确文件名时也非常有用。第Ⅱ部分:编辑器第Ⅱ部分包括两个经典的强大Linux命令行文本编辑器。绝大多数Linux发行版均包含vim文本编辑器,它是广泛使用的vi编辑器和同样流行的GNU emacs编辑器的“增强版”。使用文本编辑器可创建和修改文本文件,这些文本文件包括程序、shell脚本、备忘录以及文本格式化程序的输入数据。

因为Linux系统管理涉及编辑基于文本的配置文件,所以富有经验的Linux管理员应熟练使用文本编辑器。第6章 vim编辑器第6章首先介绍vim编辑器的使用手册,然后阐述如何使用vim的许多高级功能,包括搜索字符串中的特殊字符、通用缓冲区、命名缓冲区、参数、标记以及在vim中执行命令,该章末尾总结了vim的命令。第7章 emacs编辑器第7章首先介绍emacs的使用手册,然后介绍emacs编辑器的很多高级功能,还包括META、ALT和ESCAPE键的使用。该章还包括键绑定、缓冲区以及字符串和正则表达式的增量搜索和完全搜索。另外,该章详细讲解指针、光标、标记和区域的关系,同时介绍如何利用emacs的大量联机帮助功能。其他主题包括剪切和粘贴、多窗口和多帧的使用以及emacs模式的使用(特别是C模式,可辅助程序员编写和调试C代码)。第7章末尾总结了emacs的命令。第Ⅲ部分:shell第Ⅲ部分更详细地讲解bash的用法和TC Shell(tcsh)。第8章 bash第8章承接第5章,内容包括shell更高级的用法。例如,该章使用Bourne Again Shell(bash),系统shell脚本几乎只使用这种shell。

第8章的内容包括:●使用shell启动文件、shell选项和shell特性来定制shell。●使用作业控制机制停止作业,将作业从前台移到后台执行,或将其从后台移到前台执行。●使用shell历史列表来修改和重新执行命令。●创建别名以定制命令。●在shell脚本中使用用户创建的变量和关键字变量。●实现本地化,包括对locale实用程序、LC_变量和国际化的讨论。●创建函数,这些函数类似于shell脚本,但执行速度更快。●编写并执行简单的shell脚本。●重定向错误消息,将错误消息输出到文件中而不是输出到屏幕上。第9章 tcsh第9章描述tcsh,并讨论bash和tcsh的异同。该章将描述:●运行tcsh并将默认shell改为tcsh。●重定向错误消息,将错误消息输出到文件中而不是输出到屏幕上。●使用控制结构来改变shell脚本中的控制流。●使用tcsh的数组和数值变量。●使用shell的内置命令。第Ⅳ部分:编程工具第Ⅳ部分涵盖Linux和macOS系统管理中广泛使用的编程实用程序和一般用途的编程。第10章 bash程序设计第10章承接第8章,给出使用bash编写高级shell脚本的用法,并列举详细的示例。

unix编程艺术 pdf 书签_unix编程艺术_unix 编程艺术

该章将讨论:●控制结构,如if...then...else和case。●变量,讨论属性、扩展空的或未赋值的变量、数组变量和函数中的变量。●环境,包括环境变量与本地变量、继承和进程局部性的关系。●算法和逻辑(布尔)表达式。●一些最有用的shell内置命令,包括exec、trap和getopts。一旦读者掌握了Linux基础知识,就可以运用已有知识,使用shell编程语言来构建更加复杂和专业的程序。第10章首先提出两个完整的shell编程问题,然后说明如何一步步地解决这些问题。第一个问题使用递归创建一个目录层次结构。第二个问题开发一个迷宫程序,介绍如何创建shell脚本与用户进行交互,以及脚本如何处理数据(第Ⅵ部分的例子也揭示了在shell脚本中用到的实用程序的很多功能)。第11章 Perl脚本语言介绍流行的、功能丰富的Perl编程语言,内容包括:●Perl帮助工具,包括perldoc。●Perl变量和控制结构。●文件处理。●正则表达式。●CPAN模块的安装和使用。许多Linux管理脚本都是用Perl编写的。阅读第11章后,读者就可以更好地理解这些脚本,并开始编写自己的脚本。该章还包含Perl脚本的许多示例。

第12章 Python编程语言介绍灵活、友好的Python编程语言。该章内容包括:●Python列表和字典。●可用于读取和写入文件的Python函数和方法。●使用pickle在磁盘上存储对象。●导入和使用库。●定义和使用函数,包括常用函数和Lambda函数。●正则表达式。●使用列表推导。大量Linux工具都是用Python编写的。第12章介绍Python,包括一些面向对象的基本概念,因此用户可阅读和理解Python程序,并能自己编写。该章包含许多Python程序示例。第13章 MariaDB数据库管理系统介绍广泛使用的MariaDB/MySQL关系型数据库管理系统(RDBMS)。该章内容包括:●关系型数据库的术语。●安装MariaDB客户端和服务器。●创建数据库。●添加用户。●创建和更改表。●向数据库添加数据。●备份和恢复数据库。第14章 AWK模式处理语言第14章描述如何使用强大的AWK语言编写程序,这些程序可过滤数据、撰写报告并从Internet上获取数据。14.7节描述了如何使用coprocess与另一个程序建立双向通信,以及如何通过网络而不是从本地文件获取数据。第15章 sed编辑器第15章描述sed,它是一个非交互式流编辑器,很多应用程序在shell脚本中作为过滤器。

该章将讨论如何使用sed的缓冲区来编写简单但功能强大的程序,同时给出很多例子。第Ⅴ部分:安全的网络实用程序第Ⅴ部分描述可用于在远程系统上工作和通过网络安全地复制文件的两个实用程序。第16章 rsync安全复制实用程序第16章描述rsync实用程序,这是一个安全复制实用程序,它可在本地系统上复制普通文件或目录层次结构,也可在本地系统和网络上的另一个远程系统之间复制普通文件或目录层次结构。编写程序时,可使用这个实用程序把文件或目录备份到另一个系统上。第17章 OpenSSH安全通信实用程序讲解使用ssh、scp和sftp实用程序在Internet上安全通信的方法。该章包括认证密钥的使用——允许用户不使用密码就能安全地登录远程系统;ssh-agent——用于在工作过程中保存用户私钥;以及转发X11——使用户可远程运行图形界面程序。第VI部分:命令参考Linux包含数百个实用程序。第14~17章以及第Ⅵ部分列举最重要的100多个实用程序的使用范例,使用这些实用程序,用户在解决问题时就不必使用C语言编程。如果读者已经熟悉UNIX/Linux,该部分就是一个有价值且易用的参考手册。如果读者并不是一位非常有经验的用户,那么在掌握《Linux命令行与shell编程实战(第4版)》前面的章节时,这部分可以作为有用的补充。

尽管第14~17章以及第Ⅵ部分描述的实用程序采用的格式类似于Linux手册,但这部分内容更易于阅读和理解。这些实用程序是经过挑选的,因为它们是日常工作中经常使用的(如ls和cp),或者因为它们是shell脚本中特别有用的工具(如sort、paste和test),或者因为它们有助于使用Linux系统(如ps、kill和fsck),或者因为它们可用来与其他系统进行通信(如ssh、scp和ftp)。每个实用程序的描述均包括其最有用选项的完整描述,并指出macOS和Linux所支持选项的区别。“讨论”和“注意”部分呈现充分利用相应实用程序的一些提示和技巧。“示例”部分说明如何在实际工作中使用这些实用程序,单独用一个程序或与其他实用程序一起,完成诸如生成报告、汇总数据以及提取信息等任务。浏览find、ftp和sort 这三个实用程序的“示例”部分,就可以看出这些部分的信息非常丰富。一些实用程序,例如Midnight Commander(mc)和screen,包含更详细的讨论和指南信息。第Ⅶ部分:附录第Ⅶ部分为附录和术语表。附录A 正则表达式讲解如何使用正则表达式来充分利用Linux的潜在功能。

很多实用程序,包括grep、sed、vim、AWK、Perl和Python,允许用正则表达式来替代简单的字符串。单个正则表达式可匹配很多简单的字符串。附录B 获取帮助详细描述在使用Linux系统时遇到的问题的典型解决步骤。附录C 更新系统讲解如何使用实用程序下载软件并更新系统。该附录包括:●dnf 从Internet下载软件,更新系统并自动解决软件依赖性问题。●apt-get dnf的一个替代品,同样用于系统更新。●BitTorrent 适于发布大量数据,如Linux的安装CD和DVD。附录D macOS注意事项为一直使用Linux或其他类UNIX系统且不熟悉macOS的用户简要介绍macOS的功能和特点。附录E 术语表定义了与使用Linux和macOS相关的500多个术语。补充作者网站的首页()包含书中一些可下载的较长的程序列表,还有很多有趣和有用的与Linux和OS X相关的万维网站点的链接,包括《Linux命令行与shell编程实战(第4版)》的勘误表、偶数编号习题的答案以及意见和建议。另外,也可登录或扫描《Linux命令行与shell编程实战(第4版)》封底二维码,以下载较长的程序列表。提示可在informit.com/register上注册,从而方便地访问下载资料、更新信息和/或勘误信息;注意,必须登录或创建新账户。输入EISBN,即9780134774602,并单击Submit。此后,可在Registered Products下看到很多附赠内容。

more >

(编辑:天瑞地安资讯网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章