logo资料库

A Practical Guide to Linux Commands, Editors, and Programming(4t....pdf

第1页 / 共1236页
第2页 / 共1236页
第3页 / 共1236页
第4页 / 共1236页
第5页 / 共1236页
第6页 / 共1236页
第7页 / 共1236页
第8页 / 共1236页
资料共1236页,剩余部分请下载后查看
Cover
Copyright
Contents
Preface
1: Welcome to Linux and Macos
The History of UNIX and GNU–Linux
The Heritage of Linux: UNIX
Fade to 1983
Next Scene, 1991
The Code Is Free
Have Fun!
What Is So Good About Linux?
Why Linux Is Popular with Hardware Companies and Developers
Linux Is Portable
The C Programming Language
Overview of Linux
Linux Has a Kernel Programming Interface
Linux Can Support Many Users
Linux Can Run Many Tasks
Linux Provides a Secure Hierarchical Filesystem
The Shell: Command Interpreter and Programming Language
A Large Collection of Useful Utilities
Interprocess Communication
System Administration
Additional Features of Linux
GUIs: Graphical User Interfaces
(Inter)Networking Utilities
Software Development
Chapter Summary
Exercises
Part I: The Linux and MacOS Operating Systems
2: Getting Started
Conventions Used in This Book
Logging In from a Terminal (Emulator)
Working from the Command Line
Which Shell Are You Running?
Correcting Mistakes
Repeating/Editing Command Lines
su/sudo: Curbing Your Power (root Privileges)
Where to Find Documentation
man: Displays the System Manual
apropos: Searches for a Keyword
info: Displays Information About Utilities
The ––help Option
The bash help Command
Getting Help
More About Logging In and Passwords
What to Do If You Cannot Log In
Logging In Remotely: Terminal Emulators, ssh, and Dial-Up Connections
Using Virtual Consoles
Logging Out
Changing Your Password
Chapter Summary
Exercises
Advanced Exercises
3: The Utilities
Special Characters
Basic Utilities
ls: Lists the Names of Files
cat: Displays a Text File
rm: Deletes a File
less Is more: Display a Text File One Screen at a Time
hostname: Displays the System Name
Working with Files
cp: Copies a File
mv: Changes the Name of a File
lpr: Prints a File
grep: Searches for a String
head: Displays the Beginning of a File
tail: Displays the End of a File
sort: Displays a File in Order
uniq: Removes Duplicate Lines from a File
diff: Compares Two Files
file: Identifies the Contents of a File
|(Pipeline): Communicates Between Processes
Four More Utilities
echo: Displays Text
date: Displays the Time and Date
script: Records a Shell Session
unix2dos: Converts Linux Files to Windows and macOS Format
Compressing and Archiving Files
bzip2: Compresses a File
bzcat and bunzip2: Decompress a File
gzip: Compresses a File
tar: Packs and Unpacks Archives
Locating Utilities
which and whereis: Locate a Utility
locate: Searches for a File
Displaying User and System Information
who: Lists Users on the System
finger: Lists Users on the System
uptime: Displays System Load and Duration Information
w: Lists Users on the System
free: Displays Memory Usage Information
Communicating with Other Users
write: Sends a Message
mesg: Denies or Accepts Messages
Email
Chapter Summary
Exercises
Advanced Exercises
4: The Filesystem
The Hierarchical Filesystem
Directory Files and Ordinary Files
Filenames
The Working Directory
Your Home Directory
Pathnames
Absolute Pathnames
Relative Pathnames
Working with Directories
mkdir: Creates a Directory
cd: Changes to Another Working Directory
rmdir: Deletes a Directory
Using Pathnames
mv, cp: Move or Copy Files
mv: Moves a Directory
Important Standard Directories and Files
Access Permissions
ls –l: Displays Permissions
chmod: Changes Access Permissions
Setuid and Setgid Permissions
Directory Access Permissions
ACLs: Access Control Lists
Enabling ACLs
Working with Access Rules
Setting Default Rules for a Directory
Links
Hard Links
Symbolic Links
rm: Removes a Link
Dereferencing Symbolic Links
Chapter Summary
Exercises
Advanced Exercises
5: The Shell
Special Characters
Ordinary Files and Directory Files
The Working Directory
Your Home Directory
The Command Line
A Simple Command
Syntax
Simple Commands
Processing the Command Line
Executing a Command
Editing the Command Line
Standard Input and Standard Output
The Screen as a File
The Keyboard and Screen as Standard Input and Standard Output
Redirection
Pipelines
Lists
Running a Command in the Background
Filename Generation/Pathname Expansion
The? Special Character
The * Special Character
The [] Special Characters
Builtins
Chapter Summary
Utilities and Builtins Introduced in This Chapter
Exercises
Advanced Exercises
Part II: The Editors
6: The vim Editor
History
Tutorial: Using vim to Create and Edit a File
Starting vim
Command and Input Modes
Entering Text
Getting Help
Ending the Editing Session
The compatible Parameter
Introduction to vim Features
Online Help
Terminology
Modes of Operation
The Display
Correcting Text as You Insert It
Work Buffer
Line Length and File Size
Windows
File Locks
Abnormal Termination of an Editing Session
Recovering Text After a Crash
Command Mode: Moving the Cursor
Moving the Cursor by Characters
Moving the Cursor to a Specific Character
Moving the Cursor by Words
Moving the Cursor by Lines
Moving the Cursor by Sentences and Paragraphs
Moving the Cursor Within the Screen
Viewing Different Parts of the Work Buffer
Input Mode
Inserting Text
Appending Text
Opening a Line for Text
Replacing Text
Quoting Special Characters in Input Mode
Command Mode: Deleting and Changing Text
Undoing Changes
Deleting Characters
Deleting Text
Changing Text
Replacing Text
Changing Case
Searching and Substituting
Searching for a Character
Searching for a String
Substituting One String for Another
Miscellaneous Commands
Join
Status
. (Period)
Copying, Moving, and Deleting Text
The General-Purpose Buffer
Named Buffers
Numbered Buffers
Reading and Writing Files
Reading Files
Writing Files
Identifying the Current File
Setting Parameters
Setting Parameters from Within vim
Setting Parameters in a Startup File
The .vimrc Startup File
Parameters
Advanced Editing Techniques
Using Markers
Editing Other Files
Macros and Shortcuts
Executing Shell Commands from Within vim
Units of Measure
Character
Word
Blank-Delimited Word
Line
Sentence
Paragraph
Screen (Window)
Repeat Factor
Chapter Summary
Exercises
Advanced Exercises
7: The emacs Editor
History
Evolution
emacs Versus vim
Tutorial: Getting Started with emacs
Starting emacs
Exiting
Inserting Text
Deleting Characters
Moving the Cursor
Editing at the Cursor Position
Saving and Retrieving the Buffer
Basic Editing Commands
Keys: Notation and Use
Key Sequences and Commands
META-x: Running a Command Without a Key Binding
Numeric Arguments
Point and the Cursor
Scrolling Through a Buffer
Erasing Text
Searching for Text
Using the Menubar from the Keyboard
Online Help
Advanced Editing
Undoing Changes
Point, Mark, and Region
Cut and Paste: Yanking Killed Text
Inserting Special Characters
Global Buffer Commands
Visiting and Saving Files
Buffers
Windows
Foreground Shell Commands
Background Shell Commands
Major Modes: Language-Sensitive Editing
Selecting a Major Mode
Human-Language Modes
C Mode
Customizing Indention
Comments
Special-Purpose Modes
Customizing emacs
The .emacs Startup File
Remapping Keys
A Sample .emacs File
More Information
Access to emacs
Chapter Summary
Exercises
Advanced Exercises
Part III: The Shells
8: The Bourne Again Shell (bash)
Background
Startup Files
Login Shells
Interactive Nonlogin Shells
Noninteractive Shells
Setting Up Startup Files
. (Dot) or source: Runs a Startup File in the Current Shell
Commands That Are Symbols
Redirecting Standard Error
Writing and Executing a Simple Shell Script
chmod: Makes a File Executable
#! Specifies a Shell
# Begins a Comment
Executing a Shell Script
Control Operators: Separate and Group Commands
; and NEWLINE Separate Commands
| and & Separate Commands and Do Something Else
&& and || Boolean Control Operators
() Groups Commands
\ Continues a Command
Job Control
jobs: Lists Jobs
fg: Brings a Job to the Foreground
Suspending a Job
bg: Sends a Job to the Background
Manipulating the Directory Stack
dirs: Displays the Stack
pushd: Pushes a Directory on the Stack
popd: Pops a Directory Off the Stack
Parameters and Variables
User-Created Variables
Variable Attributes
Keyword Variables
Special Characters
Locale
Time
Processes
Process Structure
Process Identification
Executing a Command
History
Variables That Control History
Reexecuting and Editing Commands
The Readline Library
Aliases
Single Versus Double Quotation Marks in Aliases
Examples of Aliases
Functions
Controlling bash: Features and Options
bash Command-Line Options
Shell Features
Processing the Command Line
History Expansion
Alias Substitution
Parsing and Scanning the Command Line
Command-Line Expansion
Chapter Summary
Exercises
Advanced Exercises
9: The TC Shell (tcsh)
Shell Scripts
Entering and Leaving the TC Shell
Startup Files
Features Common to the Bourne Again and TC Shells
Command-Line Expansion (Substitution)
Job Control
Filename Substitution
Manipulating the Directory Stack
Command Substitution
Redirecting Standard Error
Working with the Command Line
Word Completion
Editing the Command Line
Correcting Spelling
Variables
Variable Substitution
String Variables
Arrays of String Variables
Numeric Variables
Braces
Special Variable Forms
tcsh Variables
Control Structures
if
goto
Interrupt Handling
if...then...else
foreach
while
break and continue
switch
Builtins
Chapter Summary
Exercises
Advanced Exercises
Part IV: Programming Tools
10: Programming the Bourne Again Shell (bash)
Control Structures
if...then
if...then...else
if...then...elif
for...in
for
while
until
break and continue
case
select
Here Document
File Descriptors
Opening a File Descriptor
Duplicating a File Descriptor
File Descriptor Examples
Determining Whether a File Descriptor Is Associated with the Terminal
Parameters
Positional Parameters
Special Parameters
Variables
Shell Variables
Environment, Environment Variables, and Inheritance
Expanding Null and Unset Variables
Array Variables
Variables in Functions
Builtin Commands
type: Displays Information About a Command
read: Accepts User Input
exec: Executes a Command or Redirects File Descriptors
trap: Catches a Signal
kill: Aborts a Process
eval: Scans, Evaluates, and Executes a Command Line
getopts: Parses Options
A Partial List of Builtins
Expressions
Arithmetic Evaluation
Logical Evaluation (Conditional Expressions)
String Pattern Matching
Arithmetic Operators
Implicit Command-Line Continuation
Shell Programs
A Recursive Shell Script
The quiz Shell Script
Chapter Summary
Exercises
Advanced Exercises
11: The Perl Scripting Language
Introduction to Perl
More Information
Help
perldoc
Terminology
Running a Perl Program
Syntax
Variables
Scalar Variables
Array Variables
Hash Variables
Control Structures
if/unless
if...else
if...elsif...else
foreach/for
last and next
while/until
Working with Files
Sort
Subroutines
Regular Expressions
Syntax and the =~ Operator
CPAN Modules
Examples
Chapter Summary
Exercises
Advanced Exercises
12: The Python Programming Language
Introduction
Invoking Python
More Information
Writing to Standard Output and Reading from Standard Input
Functions and Methods
Scalar Variables, Lists, and Dictionaries
Scalar Variables
Lists
Dictionaries
Control Structures
if
if...else
if...elif...else
while
for
Reading from and Writing to Files
File Input and Output
Exception Handling
Pickle
Regular Expressions
Defining a Function
Using Libraries
Standard Library
Nonstandard Libraries
SciPy and NumPy Libraries
Namespace
Importing a Module
Example of Importing a Function
Lambda Functions
List Comprehensions
Chapter Summary
Exercises
Advanced Exercises
13: The MariaDB SQL Database Management System
History
Notes
Syntax and Conventions
More Information
Installing a MariaDB Server and Client
Fedora/RHEL (Red Hat Enterprise Linux)
Debian/Ubuntu/Mint
openSUSE
macOS
Client Options
Setting Up MariaDB
Assigning a Password to the MariaDB User Named root
Removing Anonymous Users
Running the Secure Installation Script
~/.my.cnf: Configures a MariaDB Client
~/.mysql_history: Stores Your MariaDB History
Creating a Database
Adding a User
Examples
Logging In
Creating a Table
Adding Data
Retrieving Data
Backing Up a Database
Modifying Data
Creating a Second Table
Joins
Chapter Summary
Exercises
14: The AWK Pattern Processing Language
Syntax
Arguments
Options
Notes
Language Basics
Patterns
Actions
Comments
Variables
Functions
Arithmetic Operators
Associative Arrays
printf
Control Structures
Examples
Advanced gawk Programming
getline: Controlling Input
Coprocess: Two-Way I/O
Getting Input from a Network
Chapter Summary
Exercises
Advanced Exercises
15: The sed Editor
Syntax
Arguments
Options
Editor Basics
Addresses
Instructions
Control Structures
The Hold Space
Examples
Chapter Summary
Exercises
Part V: Secure Network Utilities
16: The rsync Secure Copy Utility
Syntax
Arguments
Options
Notes
More Information
Examples
Using a Trailing Slash (/) on source-file
Removing Files
Copying Files to and from a Remote System
Mirroring a Directory
Making Backups
Restoring a File
Chapter Summary
Exercises
17: The OpenSSH Secure Communication Utilities
Introduction to OpenSSH
Files
More Information
Running the ssh, scp, and sftp OpenSSH Clients
Prerequisites
JumpStart I: Using ssh and scp to Connect to an OpenSSH Server
Configuring OpenSSH Clients
ssh: Logs in or Executes Commands on a Remote System
scp: Copies Files to and from a Remote System
sftp: A Secure FTP Client
~/.ssh/config and /etc/ssh/ssh_config Configuration Files
Setting Up an OpenSSH Server (sshd)
Prerequisites
Note
JumpStart II: Starting an OpenSSH Server
Authorized Keys: Automatic Login
Randomart Image
ssh-agent: Holds Your Private Keys
Command-Line Options
/etc/ssh/sshd_config Configuration File
Troubleshooting
Tunneling/Port Forwarding
Forwarding X11
Port Forwarding
Chapter Summary
Exercises
Advanced Exercises
Part VI: Command Reference
Utilities That Display and Manipulate Files
Network Utilities
Utilities That Display and Alter Status
Utilities That Are Programming Tools
Miscellaneous Utilities
Standard Multiplicative Suffixes
Common Options
The Sample Utility
sample: Brief description of what the utility does macOS
aspell: Checks a file for spelling errors
at: Executes commands at a specified time
busybox: Implements many standard utilities
bzip2: Compresses or decompresses files
cal: Displays a calendar
cat: Joins and displays files
cd: Changes to another working directory
chgrp: Changes the group associated with a file
chmod: Changes the access mode (permissions) of a file
chown: Changes the owner of a file and/or the group the file is associated with
cmp: Compares two files
comm: Compares sorted files
configure: Configures source code automatically
cp: Copies files
cpio: Creates an archive, restores files from an archive, or copies a directory hierarchy
crontab: Maintains crontab files
cut: Selects characters or fields from input lines
date: Displays or sets the system time and date
dd: Converts and copies a file
df: Displays disk space usage
diff: Displays the differences between two text files
diskutil: Checks, modifies, and repairs local volumes macOS
ditto: Copies files and creates and unpacks archives macOS
dmesg: Displays kernel messages
dscl: Displays and manages Directory Service information macOS
du: Displays information on disk usage by directory hierarchy and/or file
echo: Displays a message
expand/unexpand: Converts TABs to SPACEs and SPACEs to TABs
expr: Evaluates an expression
file: Displays the classification of a file
find: Finds files based on criteria
finger: Displays information about users
fmt: Formats text very simply
fsck: Checks and repairs a filesystem
ftp: Transfers files over a network
gawk: Searches for and processes patterns in a file
gcc: Compiles C and C++ programs
GetFileInfo: Displays file attributes macOS
grep: Searches for a pattern in files
gzip: Compresses or decompresses files
head: Displays the beginning of a file
join: Joins lines from two files based on a common field
kill: Terminates a process by PID
killall: Terminates a process by name
launchctl: Controls the launchd daemon macOS
less: Displays text files, one screen at a time
ln: Makes a link to a file
lpr: Sends files to printers
ls: Displays information about one or more files
make: Keeps a set of programs current
man: Displays documentation for utilities
mc: Manages files in a textual environment (aka Midnight Commander)
mkdir: Creates a directory
mkfs: Creates a filesystem on a device
mv: Renames or moves a file
nice: Changes the priority of a command
nl: Numbers lines from a file
nohup: Runs a command that keeps running after you log out
od: Dumps the contents of a file
open: Opens files, directories, and URLs macOS
otool: Displays object, library, and executable files macOS
paste: Joins corresponding lines from files
pax: Creates an archive, restores files from an archive, or copies a directory hierarchy
plutil: Manipulates property list files macOS
pr: Paginates files for printing
printf: Formats string and numeric data
ps: Displays process status
renice: Changes the priority of a process
rm: Removes a file (deletes a link)
rmdir: Removes directories
rsync: Securely copies files and directory hierarchies over a network
scp: Securely copies one or more files to or from a remote system
screen: Manages several textual windows
sed: Edits a file noninteractively
SetFile: Sets file attributes macOS
sleep: Creates: a process that sleeps for a specified interval
sort: Sorts and/or merges files
split: Divides a file into sections
ssh: Securely runs a program or opens a shell on a remote system
sshfs/curlftpfs: Mounts a directory on an OpenSSH or FTP server as a local directory
stat: Displays information about files
strings: Displays strings of printable characters from files
stty: Displays or sets terminal parameters
sysctl: Displays and alters kernel variables at runtime
tail: Displays the last part (tail) of a file
tar: Stores or retrieves files to/from an archive file
tee: Copies standard input to standard output and one or more files
telnet: Connects to a remote computer over a network
test: Evaluates an expression
top: Dynamically displays process status
touch: Creates a file or changes a file's access and/or modification time
tr: Replaces specified characters
tty: Displays the terminal pathname
tune2fs: Changes parameters on an ext2, ext3, or ext4 filesystem
umask: Specifies the file-creation permissions mask
uniq: Displays unique lines from a file
w: Displays information about local system users
wc: Displays the number of lines, words, and bytes in one or more files
which: Shows where in PATH a utility is located
who: Displays information about logged-in users
xargs: Converts standard input to command lines
Part VII: Appendixes
Appendix A: Regular Expressions
Characters
Delimiters
Simple Strings
Special Characters
Periods
Brackets
Asterisks
Carets and Dollar Signs
Quoting Special Characters
Rules
Longest Match Possible
Empty Regular Expressions
Bracketing Expressions
The Replacement String
Ampersand
Quoted Digit
Extended Regular Expressions
Appendix Summary
Appendix B: Help
Solving a Problem
Finding Linux and macOS Related Information
Mailing Lists
Specifying a Terminal
Appendix C: Keeping the System Up-To-Date
Using dnf
Using dnf to Install, Remove, and Update Packages
Other dnf Commands
dnf Groups
Downloading rpm Package Files Using dnf download
Configuring dnf
Using apt-get
Using apt-get to Install, Remove, and Update Packages
Using apt-get to Upgrade the System
Other apt-get Commands
Using apt Commands
Repositories
sources.list: Specifies Repositories for apt-get to Search
BitTorrent
Appendix D: MacOS Notes
Open Directory
Filesystems
Nondisk Filesystems
Case Sensitivity
/Volumes
Extended Attributes
File Forks
File Attributes
ACLs
Activating the Terminal META Key
Startup Files
Remote Logins
Many Utilities Do Not Respect Apple Human Interface Guidelines
Installing Xcode and MacPorts
macOS Implementation of Linux Features
Glossary
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
File Tree Index
Utility Index
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
Main Index
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
Utility Index A light page number such as 456 indicates a brief mention. Page numbers followed by the letter t refer to tables. Symbols A : (null) 486, 498 . (dot) 291, 493 [[...]] 506 @ 396, 398, 400, 418 % 418 alias 352, 387, 418 alloc 418 apropos 35 apt-get 1060–1064 ash see dash aspell 449, 739–742 at 743–746 atq 743–746 atrm 743–746 atrun (macOS) 744 autoconf 771 awk see mawk B basename 463 bash see bash in the Main index (page 1141) batch 743–746 bg 151, 306, 418 bind 350 bindkey 393, 394, 418 builtins 419, 504t bunzip2 65, 750–751 busybox 747–749 bzcat 65, 750–751 bzip2 64, 750–751 bzip2recover 65, 750–751 C cal 752 cat 52, 138, 141, 145, 436, 710, 753–754 cd 94, 117, 323, 419, 755–756 chdir 419 chgrp 121, 757–758 chmod 102–104, 295, 756–763 chmod (macOS) 1074–1076 chown 764–765 chsh 287, 381 cmp 766–767 col 900 comm 768–769 compress 65, 86, 859, 997, 997 configure 770–771 cp 53, 97, 131, 772–775 cpio 776–780, 823, 826, 860 cron 781–783 crontab 781–783 curlftpfs 983–985 cut 369, 784–785 D dash 287 date 62, 329, 330, 331, 383, 472, 787–789 dd 711, 790–792 declare 315–316, 487 df 793–794 diff 59, 795–799 diff3 796 dircolors 888 dirs 307, 389, 419 disktool (macOS) 801 diskutil (macOS) 800–802 ditto (macOS) 803–804 dmesg 805 dos2unix 63 dscl (macOS) 806–808 du 809–811 E e2fsck 835 echo 61, 154, 381, 419, 457, 458, 476, 812–813 ed 56, 166, 795 egrep 853, 854, 1044 elvis 166 emacs 222–278 env 358, 483 eval 358, 419, 500 ex 166, 175 exec 416, 419, 465, 493–496 getopts 501–503 getty 333 glob 420 grep 56, 148, 450, 462, 531, 827, 853–857 gunzip 66, 858–860, 997 gzip 66, 858–860, 997 H hash 336 hashstat 420 head 57, 861–862 history 336, 337, 384, exit 382, 407, 419, 434, 420 F I J K L 477 expand 814–815 export 316, 481–482 expr 816–819 false 302 fc 338–340 fg 151, 305, 419 fgrep 853, 854 file 60, 332, 820–821 filetest 411, 419 find 390, 442, 822–827 finger 72, 828–829 fmt 831–832 free 74 fromdos 63 fsck 833–837 fsck (macOS) 801 ftp 838–843 fusermount 981–983 G g++ 850–854 gawk 447, 636–668, 1044 gcc 846–850 gdb 847 getfacl 108–112 GetFileInfo (macOS) 851–852 hostname 53 info 36–38, 158 ispell see aspell jobs 30, 152, 305, 420 join 863–865 kill 30, 152, 424, 496, 499, 866–867, 949 killall 868–869 launchctl (macOS) 745, 870–871 ldd 928 less 34, 53, 148, 436, 873–876 let 370, 505 lftp 715 limit 420 ln 113, 116, 878–880 local 357, 488 locale 328–330 locate 70 log 420 login 333, 420 logout 382, 407, 420 lpq 56, 881–883 Continued on inside back cover
Utility Index Continued from inside front cover M N O P lpr 55, 147, 881–883 lprm 56, 881–883 lpstat 55 ls 52, 100, 119, 884–890 ls–F 407, 420 mac2unix 63 make 569, 892–897 man 33–35, 898–901 mawk see gawk mc 902–908 mesg 76 mingetty 333 mkdir 93–94, 909 mkfs 911–913 mklost+found 836 mlocate 70 more 53, 874 mount 107 mv 54, 97, 98, 914–915 mysqldump 625 ncal 752 nice 420, 916–917 nl 918–919 nohup 420, 920 notify 420 od 921–924 onintr 412, 420 open (macOS) 926–927 otool (macOS) 928–929 paste 930–931 pax 932–937 perldoc 531 pinfo 37 plutil (macOS) 938–939 popd 309, 420 port 1077 pr 940–941 printenv 420, 482 printf 942–945 ps 152, 298, 334, 476, 946–950 ps2pdf 900 pstree 334 pushd 308, 408, 421 pwck 660 pwd 89, 117, 129 pwgen 45 R read 451, 489–492, 492–493 readlink 120 readonly 315, 316 rehash 336, 421 renice 951 repeat 421 rm 52, 118, 408, 953–954 rmdir 96, 955 rsync 690–700, 714 rtorrent 1065 run-parts 782 S sched 421 scp 707, 713–714 see also OpenSSH in the Main index (page 1141) screen 958–963 script 62 sdiff 796, 797 sed 670–686 seq 367, 445 set 360, 396, 400, 421, 439, 442, 472, 484 setenv 396, 421, 481 setfacl 108–112 SetFile (macOS) 965–966 sftp 715 sh 287, 1086 shift 421, 436, 473 shopt 360 shred 954 sleep 477, 967–968 sort 58, 147, 374, 466, 969–977 source 291, 421 split 978–979 ssh 27, 707, 709–713 see also OpenSSH in the Main index (page 1141) ssh-add 721 ssh-agent 720–721 ssh-copy-id 719 sshfs 981–983 ssh-import-id 705 ssh-keygen 718–720 stat 984–985 stop 421 strings 986 stty 29, 987–990 su 32 sudo 33 suspend 421 sysctl (macOS) 991 systemsetup (macOS) 332 typeset see declare tzconfig 331 tzselect 331 U umask 422, 1021–1022 unalias 353, 355, 387, 422 uname 709 uncompress 86, 997 unexpand 814–815 unhash 422 uniq 58, 1023–1024 unix2dos 63 unix2mac 63 unlimit 422 unset 314, 422 unsetenv 397, 422 updatedb 70 uptime 73, 1008, 1025 V T tac 683, 753 tail 57, 390, 992–994 tar 66–68, 303, 995–999 tee 149, 1000 telnet 1001–1002 Terminal (macOS) 1076 test 431–433, 434, 438, W 441, 444, 448, 453, 468–469, 1005–1007 time 405, 421 todos 63 top 1008–1010 touch 96, 143, 751, 1012–1013 tput 452 tr 64, 146, 292, 785, 1014–1016 trap 452, 496–499 true 302, 498 tty 1017 tune2fs 1018–1019, 1020 type 489 X Y Z vi 166 view 177 vile 166 vim 166–217 vimtutor 165 w 73, 1025–1026 wait 422 wc 61, 396, 1027 whatis 36 where 422 whereis 69 which 69, 422, 899, 1028–1029 who 71, 1030–1031 write 75, 1030 xargs 1032–1034 yum 1054–1060 yumdownloader 1058 zcat 66, 858–860 zdiff 860 zless 860
Praise for Previous Editions of A Practical Guide to Linux Commands, Editors, and Shell Programming ® “This book is a very useful tool for anyone who wants to ‘look under the hood’ so to speak, and really start putting the power of Linux to work. What I find particularly frustrating about man pages is that they never include examples. Sobell, on the other hand, outlines very clearly what the command does and then gives several common, easy-to-understand examples that make it a breeze to start shell programming on one’s own. As with Sobell’s other works, this is simple, straight-forward, and easy to read. It’s a great book and will stay on the shelf at easy arm’s reach for a long time.” —Ray Bartlett Travel Writer “Overall I found this book to be quite excellent, and it has earned a spot on the very front of my bookshelf. It covers the real ‘guts’ of Linux— the command line and its utilities—and does so very well. Its strongest points are the outstanding use of examples, and the Command Reference sec- tion. Highly recommended for Linux users of all skill levels. Well done to Mark Sobell and Prentice Hall for this outstanding book!” —Dan Clough Electronics Engineer and Slackware Linux User “Totally unlike most Linux books, this book avoids discussing everything via GUI and jumps right into making the power of the command line your friend.” —Bjorn Tipling Software Engineer ask.com “This book is the best distro-agnostic, foundational Linux reference I’ve ever seen, out of dozens of Linux-related books I’ve read. Finding this book was a real stroke of luck. If you want to really understand how to get things done at the command line, where the power and flexibility of free UNIX-like OSes really live, this book is among the best tools you’ll find toward that end.” —Chad Perrin Writer, TechRepublic
“I moved to Linux from Windows XP a couple of years ago, and after some distro hopping settled on Linux Mint. At age 69 I thought I might be biting off more than I could chew, but thanks to much reading and the help of a local LUG I am now quite at home with Linux at the GUI level. “Now I want to learn more about the CLI and a few months ago bought your book: A Practical Guide to Linux® Commands, Editors, and Shell Programming, Second Edition. “For me, this book is proving to be the foundation upon which my under- standing of the CLI is being built. As a comparative ‘newbie’ to the Linux world, I find your book a wonderful, easy-to-follow guide that I highly recommend to other Linux users.” —John Nawell CQLUG (Central Queensland Linux User Group) “I have the second edition of A Practical Guide to Linux® Commands, Editors, and Shell Programming and am a big fan. I used it while working as a Cisco support engineer. I plan to get the third edition as soon as it is released. We will be doing a ton of command-line work on literally 1000 boxes (IMS core nodes). I feel you have already given me a lot of tools with the second edition. I want to get your new book as soon as possible. The way you write works very well for my style of learning.” —Robert Lingenfelter Support Engineer, VoIP/IMS
Praise for Other Books by Mark G. Sobell “Since I’m in an educational environment, I found the content of Sobell’s book to be right on target and very helpful for anyone managing Linux in the enterprise. His style of writing is very clear. He builds up to the chapter exercises, which I find to be relevant to real-world scenarios a user or admin would encounter. An IT/IS student would find this book a valuable complement to their education. The vast amount of information is extremely well balanced and Sobell manages to present the content without complicated asides and meandering prose. This is a ‘must have’ for anyone managing Linux systems in a networked environment or any- one running a Linux server. I would also highly recommend it to an experienced computer user who is moving to the Linux platform.” —Mary Norbury IT Director Barbara Davis Center University of Colorado at Denver from a review posted on slashdot.org “I had the chance to use your UNIX books when I when was in college years ago at Cal Poly, San Luis Obispo, CA. I have to say that your books are among the best! They’re quality books that teach the theoretical aspects and applications of the operating system.” —Benton Chan IS Engineer “The book has more than lived up to my expectations from the many reviews I read, even though it targets FC2. I have found something very rare with your book: It doesn’t read like the standard technical text, it reads more like a story. It’s a pleasure to read and hard to put down. Did I say that?! :-)” —David Hopkins Business Process Architect “Thanks for your work and for the book you wrote. There are really few books that can help people to become more efficient administrators of different workstations. We hope (in Russia) that you will continue bring- ing us a new level of understanding of Linux/UNIX systems.” —Anton Petukhov
“Mark Sobell has written a book as approachable as it is authoritative.” —Jeffrey Bianchine Advocate, Author, Journalist “Excellent reference book, well suited for the sysadmin of a Linux cluster, or the owner of a PC contemplating installing a recent stable Linux. Don’t be put off by the daunting heft of the book. Sobell has striven to be as inclusive as possible, in trying to anticipate your system adminis- tration needs.” —Wes Boudville Inventor “A Practical Guide to Red Hat® Linux® is a brilliant book. Thank you Mark Sobell.” —C. Pozrikidis University of California at San Diego “This book presents the best overview of the Linux operating system that I have found. . . . [It] should be very helpful and understandable no matter what the reader’s background: traditional UNIX user, new Linux devo- tee, or even Windows user. Each topic is presented in a clear, complete fashion and very few assumptions are made about what the reader knows. . . . The book is extremely useful as a reference, as it contains a 70-page glossary of terms and is very well indexed. It is organized in such a way that the reader can focus on simple tasks without having to wade through more advanced topics until they are ready.” —Cam Marshall Marshall Information Service LLC Member of Front Range UNIX Users Group [FRUUG] Boulder, Colorado “Conclusively, this is THE book to get if you are a new Linux user and you just got into RH/Fedora world. There’s no other book that discusses so many different topics and in such depth.” —Eugenia Loli-Queru Editor in Chief OSNews.com
“I currently own one of your books, A Practical Guide to Linux®. I believe this book is one of the most comprehensive and, as the title says, practical guides to Linux I have ever read. I consider myself a novice and I come back to this book over and over again.” —Albert J. Nguyen “Thank you for writing a book to help me get away from Windows XP and to never touch Windows Vista. The book is great; I am learning a lot of new concepts and commands. Linux is definitely getting easier to use.” —James Moritz “I am so impressed by how Mark Sobell can approach a complex topic in such an understandable manner. His command examples are especially useful in providing a novice (or even an advanced) administrator with a cookbook on how to accomplish real-world tasks on Linux. He is truly an inspired technical writer!” —George Vish II Senior Education Consultant Hewlett-Packard Company “Overall, I think it’s a great, comprehensive Ubuntu book that’ll be a valu- able resource for people of all technical levels.” —John Dong Ubuntu Forum Council Member Backports Team Leader “The JumpStart sections really offer a quick way to get things up and run- ning, allowing you to dig into the details of the book later.” —Scott Mann Aztek Networks “I would so love to be able to use this book to teach a class about not just Ubuntu or Linux but about computers in general. It is thorough and well written with good illustrations that explain important concepts for com- puter usage.” —Nathan Eckenrode New York Local Community Team
分享到:
收藏