-
Learning the bash Shell
This refreshed edition serves as the most valuable guide yet to the bash shell. It's full of practical examples of shell commands and programs guaranteed to make everyday use of Linux that much easier. Includes information on key bindings, command line editing and processing, integrated programming features, signal handling, and much more! O'Reilly's bestselling book on Linux's bash shell is at it again. Now that Linux is an established player both as a server and on the desktop Learning the bash Shell has been updated and refreshed to account for all the latest changes. Indeed, this third edition serves as the most valuable guide yet to the bash shell. As any good programmer knows, the first thing users of the Linux operating system come face to face with is the shell the UNIX term for a user interface to the system. In other words, it's what lets you communicate with the computer via the keyboard and display. Mastering the bash shell might sound fairly simple but it isn't. In truth, there are many complexities that need careful explanation, which is just what Learning the bash Shell provides. If you are new to shell programming, the book provides an excellent introduction, covering everything from the most basic to the most advanced features. And if you've been writing shell scripts for years, it offers a great way to find out what the new shell offers. Learning the bash Shell is also full of practical examples of shell commands and programs that will make everyday use of Linux that much easier. With this book, programmers will learn: * How to install bash as your login shell * The basics of interactive shell use, including UNIX file and directory structures, standard I/O, and background jobs * Command line editing, history substitution, and key bindings * How to customize your shell environment without programming * The nuts and bolts of basic shell programming, flow control structures, command-line options and typed variables * Process handling, from job control to processes, coroutines and subshells * Debugging techniques, such as trace and verbose modes * Techniques for implementing system-wide shell customization and features related to system security -
Learning GNU Emacs Third Edition
The third edition of Learning GNU Emacs describes Emacs 21.3 from the ground up, including new user interface features such as an icon-based toolbar and an interactive interface to Emacs customization. A new chapter details how to install and run Emacs on Mac OS X, Windows, and Linux, including tips for using Emacs effectively on those platforms. GNU Emacs is the most popular and widespread of the Emacs family of editors. It is also the most powerful and flexible. Unlike all other text editors, GNU Emacs is a complete working environment--you can stay within Emacs all day without leaving. Learning GNU Emacs, 3rd Edition tells readers how to get started with the GNU Emacs editor. It is a thorough guide that will also "grow" with you: as you become more proficient, this book will help you learn how to use Emacs more effectively. It takes you from basic Emacs usage (simple text editing) to moderately complicated customization and programming. The third edition of Learning GNU Emacs describes Emacs 21.3 from the ground up, including new user interface features such as an icon-based toolbar and an interactive interface to Emacs customization. A new chapter details how to install and run Emacs on Mac OS X, Windows, and Linux, including tips for using Emacs effectively on those platforms. Learning GNU Emacs, third edition, covers: * How to edit files with Emacs * Using the operating system shell through Emacs * How to use multiple buffers, windows, and frames * Customizing Emacs interactively and through startup files * Writing macros to circumvent repetitious tasks * Emacs as a programming environment for Java, C++, and Perl, among others * Using Emacs as an integrated development environment (IDE) * Integrating Emacs with CVS, Subversion and other change control systems for projects with multiple developers * Writing HTML, XHTML, and XML with Emacs * The basics of Emacs Lisp The book is aimed at new Emacs users, whether or not they are programmers. Also useful for readers switching from other Emacs implementations to GNU Emacs. -
UNIX系统编程
本书深入阐述了能使UNIX操作系统发挥出量大功效的软件设计方法,对UNIX编程的精髓进行了清晰易懂的介绍。两位作者具有多年教学与科研经验,匠心独运,精耕细做,以一些用来说明如何使用系统调用的短小代码段开始,巧妙地过渡到实际项目中,逐渐在拓展了读者的技术水平。本书对通信、并发和多线程问题进行了透彻的研究;对复杂的概念,比如信号和并发,进行了全面、明晰的解释,并以此闻名。本书的特色还在于它提供了大量实例、练习、可重用的代码以及有和于网络通信程序的简化了的库。 本书同时也是一本基于最新的UNIX标准的完备的参考书,它完全覆盖了与文件、信号、信号量、POSIX线程和客户机-服务器通信相关的内容。此外,本版本中新增拉在于Web、UDP和服务器性能的章节也为本书增色不少。书中包含大量有趣的项目设计及其参考答案,例如命令解释程序、WWW重定向、因特网音频广播、服务器性能等,这些项目设计稍加完善就可以成为可用的程序,可供软件开发人员参考。 本书的Web站点http://usp.cs,utsa,edu/usp为读者提供了大量的资料,内容包括所有可下载的程序,这些程序可以免费使用。此外,这个站点中还包含到模拟器、测试工具、作者准备的课程资料以及勘误表的链接。 本书是UNIX系统编程的经典教材,并基于最新的UNIX标准进行了更新,其内容完全覆盖文件、信号、POSIX线程、UDP、Web和客户机-服务器等相关内容,并对通信、并发和多线程问题进行了透彻的研究,对复杂的概念进行了全面、完善以及明晰的解释,并以此而闻名。本书不仅提供了大量实例和练习,还专门设计了有针对性的项目,并给出了参考答案,帮助读者理解相关的概念,增强应用能力。本书适合作为高等院校计算机专业教材,也可供软件开发人员参考。 -
Unix内核源码剖析
为什么要阅读内核源代码 ● 对计算机系统的全貌有更深入的了解 ● 对学到的算法和思路举一反三 ● 加深对操作系统的理解 ● 提升自身的技术水平 为什么选择UNIX V6? ● 代码行数约为1 万行 ● 有充实的资料可参考 ● 网罗了操作系统的基本功能 ● 简化的设计 ● 便于读者对系统有完整的了解 ● 有模拟器可供参考 本书是一本Unix内核源代码的阅读指南。作者结合UNIX V6已公开的相关文档,对其内核源码进行详细剖析,旨在让读者更深入地理解进程、中断、块I/O系统、文件系统、字符I/O系统、启动系统等操作系统的基本原理。 本书适合操作系统的初中级学习者阅读,特别适合通过大学课程和其他入门书对操作系统有所了解,但是对具体细节缺乏深入理解的读者,以及那些对操作系统的具体实现有兴趣的读者。 -
学习GNU Emacs
学习GNU Emacs GNU Emacs是Emacs编辑器家族中最受欢迎、传播范围最广、也是最强大和最灵活的UNIX文本编辑器。与其他文本编辑器的重要区别在于它是一个完备的工作环境,使用Emacs可以完成各种日常工作。本书循序渐进地讲述Emacs的入门知识,随着本书的深入,读者的Emacs使用水平将从初级(只会进行简单的文字编辑)提高到足以完成相当复杂的定制和程序设计任务的阶段。 本书对Emac -
sed与awk
本书在一开始就给出一个概述和指南,论述了从grep到sed再到awk不断改进的功能。sed和awk具有相同的命令行语法,以脚本的形式接收用户的命令。因为所有这三个程序都使用UNIX正则表达式,因此书中用一章的篇幅来介绍UNIX的正则表达式语法。 然后,本书介绍如何编写sed脚本。从编写几行简单的脚本开始,学习进行手工编辑操作的其他基本命令和高级命令,以及由此引入的简单程序结构。这些高级命令包括用于处理保持空间、即一个等量齐观时缓冲区的命令。