دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: [1 ed.]
نویسندگان: Chris F.A. Johnson
سری: Expert's Voice in Open Source
ISBN (شابک) : 9781590594711, 1590594711
ناشر: Apress
سال نشر: 2005
تعداد صفحات: 430
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 2 Mb
در صورت تبدیل فایل کتاب Shell Scripting Recipes: A Problem-Solution Approach به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب دستور العمل های اسکریپت نویسی پوسته: یک رویکرد حل مسئله نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
در محیط IT امروزی، مدیران سیستم های مضطرب بیش از هر زمان دیگری مشغول کار هستند. این کتاب به آنها کمک میکند تا بخشی از زمان از دست رفته صرف شده برای ایجاد و آزمایش اسکریپتهای پوسته را به دست آورند و خوانندگان را در بیش از 150 مثال بسیار مورد نیاز و کاربردی در دنیای واقعی راهنمایی میکند. زیرا تمام اسکریپتهای موجود در این کتاب POSIX (رابط سیستم عامل قابل حمل) هستند-- مطابق، آنها توسط همه انواع پوسته اصلی، از جمله Bash، Zsh و sh و سایر موارد پشتیبانی می شوند. تبدیل فایل، مدیریت سیستم و نظارت بر منابع تنها تعدادی از موضوعاتی است که در این مرجع اسکریپت نویسی پوسته بسیار کاربردی پوشش داده شده است.
In todays IT environment, harried system administrators are finding themselves more overworked than ever. This book helps them regain some of the lost time spent creating and testing shell scripts, and guides readers through more than 150 much-needed and practical real-world examples.Because all scripts found in this book are POSIX (Portable Operating System Interface)-compliant, they are supported by all major shell variants, including Bash, Zsh and sh, among others. File conversion, system administration, and resource monitoring are just a few of the topics covered in this highly practical shell scripting reference.
1590594711......Page 1
Contents......Page 5
About the Author......Page 15
About the Technical Reviewer......Page 16
Acknowledgments......Page 17
Introduction......Page 18
echo......Page 22
printf......Page 23
set......Page 24
shift......Page 25
type......Page 26
local......Page 27
Special Parameters......Page 28
Pathname Expansion......Page 30
Regular Expressions......Page 31
The Bourne Shell Expansions......Page 33
POSIX Parameter Expansions......Page 35
Shell-Specific Expansions, bash2, and ksh93......Page 36
Aliases......Page 37
Command Substitution Is Slow......Page 38
Using the Functions in This Book......Page 39
1.1 get_key—Get a Single Keystroke from the User......Page 40
1.2 getline—Prompt User to Enter a Line......Page 41
1.3 press_any_key—Prompt for a Single Keypress......Page 42
1.4 menu1—Print a Menu and Execute a Selected Command......Page 43
1.5 arg—Prompt for Required Argument If None Supplied......Page 44
1.6 die—Print Error Message and Exit with Error Status......Page 45
1.7 show_date—Display Date in D[D] MMM YYYY Format......Page 46
1.8 date_vars—Set Date and Time Variables......Page 47
1.9 is_num—Is This a Positive Integer?......Page 49
1.10 abbrev_num—Abbreviate Large Numbers......Page 50
1.11 commas—Add Thousands Separators to a Number......Page 51
1.12 pr1—Print Arguments, One to a Line......Page 53
1.14 checkfiles—Check That a Directory Contains Certain Files......Page 54
1.15 zpad—Pad a Number with Leading Zeroes......Page 55
1.16 cleanup—Remove Temporary Files and Reset Terminal on Exit......Page 56
cat: Concatenate Files to the Standard Output......Page 57
awk: Pattern Scanning and Processing Language......Page 58
wc: Count Characters, Words, and Lines in a File......Page 59
uniq: Remove Consecutive Duplicate Lines......Page 60
Summary......Page 61
CHAPTER 2: Playing with Files: Viewing, Manipulating, and Editing Text Files......Page 62
2.1 dos2unix—Convert Windows Text Files to Unix......Page 63
2.2 unix2dos—Convert a Unix File to Windows......Page 64
2.4 unix2mac—Convert Unix Files to Mac Format......Page 65
2.6 mac2dos—Convert Macintosh Files to Windows......Page 66
2.7 prn—Print File with Line Numbers......Page 67
2.8 prw—Print One Word per Line......Page 70
2.9 wbl—Sort Words by Length......Page 72
2.10 finfo—File Information Display......Page 73
2.12 lfreq—Letter Frequency......Page 77
2.13 fed—A Simple Batch File Editor......Page 79
Summary......Page 81
Character Actions: The char-funcs Library......Page 82
3.1 chr—Convert a Decimal Number to an ASCII Character......Page 83
3.2 asc—Convert a Character to Its Decimal Equivalent......Page 84
3.3 nxt—Get the Next Character in ASCII Sequence......Page 85
3.4 upr—Convert Character(s) to Uppercase......Page 86
3.5 lwr—Convert Character(s) to Lowercase......Page 88
3.6 sub—Replace First Occurrence of a Pattern......Page 90
3.7 gsub—Globally Replace a Pattern in a String......Page 91
3.8 repeat—Build a String of a Specified Length......Page 93
3.9 index, rindex—Find Position of One String Within Another......Page 95
3.10 substr—Extract a Portion of a String......Page 97
3.11 insert_str—Place One String Inside Another......Page 99
Summary......Page 100
CHAPTER 4: What\'s in a Word?......Page 101
4.1 write_config—Write User’s Information to the Configuration File......Page 102
4.2 do_config—Check For and Source Default Configuration File......Page 103
4.3 set_sysdict—Select the Dictionary Directory......Page 104
4.4 mkwsig—Sort Letters in a Word......Page 105
4.5 wf-clean—Remove Carriage Returns and Accents......Page 106
4.6 wf-compounds—Squish Compound Words and Save with Lengths......Page 107
4.7 wf-setup—Prepare Word and Anagram Lists......Page 109
4.8 wf—Find Words That Match a Pattern......Page 111
4.9 wfb—Find Words That Begin with a Given Pattern......Page 113
4.10 wfe—Find Words That End with a Given Pattern......Page 114
4.11 wfc—Find Words That Contain a Given Pattern......Page 115
4.12 wfit—Find Words That Fit Together in a Grid......Page 117
4.13 anagram—Find Words That Are Anagrams of a Given Word......Page 120
4.14 aplus—Find Anagrams of a Word with a Letter Added......Page 121
4.15 aminus—Remove Each Letter in Turn and Anagram What\'s Left......Page 123
Summary......Page 124
The math-funcs Library......Page 125
5.1 fpmul—Multiply Decimal Fractions......Page 126
5.3 round—Round the Argument to the Nearest Integer......Page 130
5.4 pow—Raise a Number to Any Given Power......Page 131
5.6 cube—Raise a Number to the Third Power......Page 133
5.7 calc—A Simple Command-Line Calculator......Page 134
5.8 total—Add a List of Numbers......Page 135
5.9 mean—Find the Arithmetic Mean of a List of Numbers......Page 136
5.10 median—Find the Median of a List of Numbers......Page 138
5.11 mode—Find the Number That Appears Most in a List......Page 139
5.12 range—Find the Range of a Set of Numbers......Page 140
5.13 stdev—Finding the Standard Deviation......Page 142
Converting Between Unit Systems......Page 143
5.14 conversion-funcs—Converting Metric Units......Page 144
5.15 conversion—A Menu System for Metric Conversion......Page 151
Summary......Page 155
What\'s in a Name?......Page 156
OK Filenames......Page 157
6.1 basename—Extract the Last Element of a Pathname......Page 158
6.2 dirname—Return All but the Last Element of a Pathname......Page 160
6.3 is_pfname—Check for POSIX Portable Filename......Page 161
6.4 is_OKfname—Check Whether a Filename Is Acceptable......Page 162
6.5 pfname—Convert Nonportable Characters in Filename......Page 163
6.6 OKfname—Make a Filename Acceptable......Page 164
6.8 whitespc—Fix Filenames Containing Whitespace Characters......Page 165
6.9 is_dir—Is This a Directory I See Before Me?......Page 166
6.10 nodoublechar—Remove Duplicate Characters from a String......Page 167
6.11 new_filename—Change Filename to Desired Character Set......Page 168
6.12 fix_pwd—Fix All the Filenames in the Current Directory......Page 169
6.13 fixfname—Convert Filenames to Sensible Names......Page 171
Summary......Page 173
7.1 path—Display a User\'s PATH......Page 175
7.2 unslash—Remove Extraneous Slashes......Page 176
7.3 checkpath—Clean Up the PATH Variable......Page 177
7.4 addpath—Add Directories to the PATH Variable......Page 179
7.5 rmpath—Remove One or More Directories from $PATH......Page 181
Summary......Page 182
CHAPTER 8: The Dating Game......Page 183
8.1 split_date—Divide a Date into Day, Month, and Year......Page 184
8.2 is_leap_year—Is There an Extra Day This Year?......Page 185
8.3 days_in_month—How Many Days Hath September?......Page 187
8.5 julian2date—Convert Julian Back to Year, Month, and Day......Page 188
8.6 dateshift—Add or Subtract a Number of Days......Page 190
8.7 diffdate—Find the Number of Days Between Two Dates......Page 192
8.8 day_of_week—Find the Day of the Week for Any Date......Page 193
8.9 display_date—Show a Date in Text Format......Page 194
8.10 parse_date—Decipher Various Forms of Date String......Page 197
8.11 valid_date—Where Was I on November 31st?......Page 201
Summary......Page 202
9.1 dfcmp—Notify User of Major Changes in Disk Usage......Page 203
9.2 symfix—Remove Broken Symbolic Links......Page 207
9.3 sym2file—Converts Symbolic Links to Regular Files......Page 209
9.4 zrm—Remove Empty Files......Page 211
9.5 undup—Remove Duplicate Files......Page 212
9.6 lsr—List the Most Recent (or Oldest) Files in a Directory......Page 214
Summary......Page 216
10.1 popcheck—Display Number of Messages in POP3 Mailbox......Page 217
10.2 pop3-funcs—Functions for Managing a POP3 Mailbox......Page 218
10.3 pop3list—Examine a POP3 Mailbox......Page 233
10.4 pop3filter—Delete and Retrieve Messages from a POP3 Server......Page 240
10.5 pflog—Print a Summary of a Day’s Activity......Page 242
10.6 viewlog—Continuously View the pop3filter Log File......Page 243
Summary......Page 245
CHAPTER 11: PostScript: More Than an Afterthought......Page 246
11.1 ps-labels—Producing Mailing Labels from a List......Page 248
11.2 ps-envelopes—Print Envelopes from List......Page 254
11.3 ps-grid—Convert a Crossword Grid to PostScript......Page 259
Summary......Page 266
CHAPTER 12: Screenplay: The screen–funcs Library......Page 267
12.1 screen-vars—Variables for Screen Manipulation......Page 268
12.2 set_attr—Set Screen-Printing Attributes......Page 270
12.3 set_fg, set_bg, set_fgbg—Set Colors for Printing to the Screen......Page 271
12.4 cls—Clear the Screen......Page 272
12.5 printat—Position Cursor by Row and Column......Page 273
12.6 put_block_at—Print Lines in a Column Anywhere on the Screen......Page 276
12.7 get_size—Set LINES and COLUMNS Variables......Page 278
12.8 max_length—Find the Length of the Longest Argument......Page 279
12.9 print_block_at—Print a Block of Lines Anywhere on the Screen......Page 280
12.10 vbar, hbar—Print a Vertical or Horizontal Bar......Page 281
12.11 center—Center a String on N Columns......Page 283
12.12 flush_right—Align String with the Right Margin......Page 284
12.13 ruler—Draw a Ruler Across the Width and Height of the Window......Page 285
12.14 box_block, box_block_at—Print Text Surrounded by a Box......Page 287
12.15 clear_area, clear_area_at—Clear an Area of the Screen......Page 288
12.16 box_area, box_area_at—Draw a Box Around an Area......Page 289
12.17 screen-demo—Saving and Redisplaying Areas of the Screen......Page 291
Summary......Page 293
CHAPTER 13: Backing Up the Drive......Page 294
13.1 bu—Backup Directories......Page 295
13.2 bin-pack—Fill Fixed-Capacity Directories with Files......Page 300
13.3 unpack—Extract All Files from One or More Archives......Page 305
Summary......Page 307
14.1 date-file—Add a Datestamp to a Filename......Page 308
14.2 rmold—Remove Old Files......Page 312
14.3 keepnewest—Remove All but the Newest or Oldest Files......Page 315
Summary......Page 317
CHAPTER 15: Covering All Your Databases......Page 318
15.1 lookup—Find the Corresponding Value for a Key......Page 319
15.2 load_db—Import Database into Shell Array......Page 321
15.3 split_record—Split a Record into Fields......Page 322
15.4 csv_split—Extract Fields from CSV Records......Page 324
15.5 put_record—Assemble a Database Record from an Array......Page 325
15.6 put_csv—Assemble Fields into a CSV Record......Page 326
15.7 db-demo—View and Edit a Password File......Page 327
PhoneBase: A Simple Phone Number Database......Page 332
15.8 ph—Look Up a Phone Number......Page 333
15.9 phadd—Add an Entry to PhoneBase......Page 334
15.11 phx—Show ph Search Results in an X Window......Page 335
Summary......Page 336
16.1 get_element—Extract the First Occurrence of an Element......Page 337
16.2 split_tags—Put Each Tag on Its Own Line......Page 340
16.3 html-title—Get the Title from an HTML File......Page 341
16.4 x2d2—Convert a Two-Digit Hexadecimal Number to Decimal......Page 343
16.5 dehex—Convert Hex Strings (%XX) to Characters......Page 344
16.6 filedate—Find and Format the Modification Date of a File......Page 346
16.7 mk-htmlindex—Create an HTML Index......Page 347
16.8 pretext—Create a Wrapper Around a Text File......Page 355
16.9 text2html—Convert a Text File to HTML......Page 356
16.10 demo.cgi—A CGI Script......Page 357
Summary......Page 358
17.1 prcalc—A Printing Calculator......Page 359
17.2 gle—Keeping Records Without a Shoebox......Page 364
Summary......Page 374
The rand-funcs Library......Page 375
18.1 random—Return One or More Random Integers in a Given Range......Page 376
18.2 toss—Simulate Tossing a Coin......Page 379
18.3 randstr—Select a String at Random......Page 380
18.4 rand-date—Generate Random Dates in ISO Format......Page 381
18.5 randsort—Print Lines in Random Order......Page 383
18.6 randomword—Generate Random Words According to Format Specifications......Page 384
18.7 dice—Roll a Set of Dice......Page 389
18.8 throw—Throw a Pair of Dice......Page 392
Summary......Page 393
19.1 topntail—Remove Top and Bottom Lines from a File......Page 394
19.2 flocate—Locate Files by Filename Alone......Page 396
19.3 sus—Display a POSIX Man Page......Page 397
19.4 cwbw—Count Words Beginning With......Page 398
19.5 cci—Configure, Compile, and Install from Tarball......Page 399
19.6 ipaddr—Find a Computer’s Network Address......Page 400
19.7 ipaddr.cgi—Print the Remote Address of an HTTP Connection......Page 401
19.9 intersperse—Insert a String Between Doubled Characters......Page 402
19.10 ll—Use a Pager for a Directory Listing Only If Necessary......Page 403
19.11 name-split—Divide a Person’s Full Name into First, Last, and Middle Names......Page 404
19.12 rot13—Encode or Decode Text......Page 405
19.13 showfstab—Show Information from /etc/fstab......Page 406
Summary......Page 408
20.1 script-setup—Prepare the Scripting Environment......Page 409
20.2 cpsh—Install Script and Make Backup Copy......Page 414
20.3 shgrep—Search Scripts for String or Regular Expression......Page 415
20.4 shcat—Display a Shell Script......Page 416
Summary......Page 417
Introductions to Shell Scripting......Page 418
Regular Expressions, sed, and awk......Page 419
History of the Shell......Page 420
C......Page 421
D......Page 422
F......Page 423
H......Page 424
L......Page 425
P......Page 426
S......Page 428
W......Page 430
Z......Page 431