[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 =head1 NAME 2 3 perl - Practical Extraction and Report Language 4 5 =head1 SYNOPSIS 6 7 B<perl> S<[ B<-sTtuUWX> ]> 8 S<[ B<-hv> ] [ B<-V>[:I<configvar>] ]> 9 S<[ B<-cw> ] [ B<-d>[B<t>][:I<debugger>] ] [ B<-D>[I<number/list>] ]> 10 S<[ B<-pna> ] [ B<-F>I<pattern> ] [ B<-l>[I<octal>] ] [ B<-0>[I<octal/hexadecimal>] ]> 11 S<[ B<-I>I<dir> ] [ B<-m>[B<->]I<module> ] [ B<-M>[B<->]I<'module...'> ] [ B<-f> ]> 12 S<[ B<-C [I<number/list>] >]> 13 S<[ B<-P> ]> 14 S<[ B<-S> ]> 15 S<[ B<-x>[I<dir>] ]> 16 S<[ B<-i>[I<extension>] ]> 17 S<[ B<-e> I<'command'> ] [ B<--> ] [ I<programfile> ] [ I<argument> ]...> 18 19 If you're new to Perl, you should start with L<perlintro>, which is a 20 general intro for beginners and provides some background to help you 21 navigate the rest of Perl's extensive documentation. 22 23 For ease of access, the Perl manual has been split up into several sections. 24 25 =head2 Overview 26 27 perl Perl overview (this section) 28 perlintro Perl introduction for beginners 29 perltoc Perl documentation table of contents 30 31 =head2 Tutorials 32 33 perlreftut Perl references short introduction 34 perldsc Perl data structures intro 35 perllol Perl data structures: arrays of arrays 36 37 perlrequick Perl regular expressions quick start 38 perlretut Perl regular expressions tutorial 39 40 perlboot Perl OO tutorial for beginners 41 perltoot Perl OO tutorial, part 1 42 perltooc Perl OO tutorial, part 2 43 perlbot Perl OO tricks and examples 44 45 perlstyle Perl style guide 46 47 perlcheat Perl cheat sheet 48 perltrap Perl traps for the unwary 49 perldebtut Perl debugging tutorial 50 51 perlfaq Perl frequently asked questions 52 perlfaq1 General Questions About Perl 53 perlfaq2 Obtaining and Learning about Perl 54 perlfaq3 Programming Tools 55 perlfaq4 Data Manipulation 56 perlfaq5 Files and Formats 57 perlfaq6 Regexes 58 perlfaq7 Perl Language Issues 59 perlfaq8 System Interaction 60 perlfaq9 Networking 61 62 =head2 Reference Manual 63 64 perlsyn Perl syntax 65 perldata Perl data structures 66 perlop Perl operators and precedence 67 perlsub Perl subroutines 68 perlfunc Perl built-in functions 69 perlopentut Perl open() tutorial 70 perlpacktut Perl pack() and unpack() tutorial 71 perlpod Perl plain old documentation 72 perlpodspec Perl plain old documentation format specification 73 perlrun Perl execution and options 74 perldiag Perl diagnostic messages 75 perllexwarn Perl warnings and their control 76 perldebug Perl debugging 77 perlvar Perl predefined variables 78 perlre Perl regular expressions, the rest of the story 79 perlrebackslash Perl regular expression backslash sequences 80 perlrecharclass Perl regular expression character classes 81 perlreref Perl regular expressions quick reference 82 perlref Perl references, the rest of the story 83 perlform Perl formats 84 perlobj Perl objects 85 perltie Perl objects hidden behind simple variables 86 perldbmfilter Perl DBM filters 87 88 perlipc Perl interprocess communication 89 perlfork Perl fork() information 90 perlnumber Perl number semantics 91 92 perlthrtut Perl threads tutorial 93 perlothrtut Old Perl threads tutorial 94 95 perlport Perl portability guide 96 perllocale Perl locale support 97 perluniintro Perl Unicode introduction 98 perlunicode Perl Unicode support 99 perlunifaq Perl Unicode FAQ 100 perlunitut Perl Unicode tutorial 101 perlebcdic Considerations for running Perl on EBCDIC platforms 102 103 perlsec Perl security 104 105 perlmod Perl modules: how they work 106 perlmodlib Perl modules: how to write and use 107 perlmodstyle Perl modules: how to write modules with style 108 perlmodinstall Perl modules: how to install from CPAN 109 perlnewmod Perl modules: preparing a new module for distribution 110 perlpragma Perl modules: writing a user pragma 111 112 perlutil utilities packaged with the Perl distribution 113 114 perlcompile Perl compiler suite intro 115 116 perlfilter Perl source filters 117 118 perlglossary Perl Glossary 119 120 =head2 Internals and C Language Interface 121 122 perlembed Perl ways to embed perl in your C or C++ application 123 perldebguts Perl debugging guts and tips 124 perlxstut Perl XS tutorial 125 perlxs Perl XS application programming interface 126 perlclib Internal replacements for standard C library functions 127 perlguts Perl internal functions for those doing extensions 128 perlcall Perl calling conventions from C 129 perlreapi Perl regular expression plugin interface 130 perlreguts Perl regular expression engine internals 131 132 perlapi Perl API listing (autogenerated) 133 perlintern Perl internal functions (autogenerated) 134 perliol C API for Perl's implementation of IO in Layers 135 perlapio Perl internal IO abstraction interface 136 137 perlhack Perl hackers guide 138 139 =head2 Miscellaneous 140 141 perlbook Perl book information 142 perlcommunity Perl community information 143 perltodo Perl things to do 144 145 perldoc Look up Perl documentation in Pod format 146 147 perlhist Perl history records 148 perldelta Perl changes since previous version 149 perl595delta Perl changes in version 5.9.5 150 perl594delta Perl changes in version 5.9.4 151 perl593delta Perl changes in version 5.9.3 152 perl592delta Perl changes in version 5.9.2 153 perl591delta Perl changes in version 5.9.1 154 perl590delta Perl changes in version 5.9.0 155 perl588delta Perl changes in version 5.8.8 156 perl587delta Perl changes in version 5.8.7 157 perl586delta Perl changes in version 5.8.6 158 perl585delta Perl changes in version 5.8.5 159 perl584delta Perl changes in version 5.8.4 160 perl583delta Perl changes in version 5.8.3 161 perl582delta Perl changes in version 5.8.2 162 perl581delta Perl changes in version 5.8.1 163 perl58delta Perl changes in version 5.8.0 164 perl573delta Perl changes in version 5.7.3 165 perl572delta Perl changes in version 5.7.2 166 perl571delta Perl changes in version 5.7.1 167 perl570delta Perl changes in version 5.7.0 168 perl561delta Perl changes in version 5.6.1 169 perl56delta Perl changes in version 5.6 170 perl5005delta Perl changes in version 5.005 171 perl5004delta Perl changes in version 5.004 172 173 perlartistic Perl Artistic License 174 perlgpl GNU General Public License 175 176 =head2 Language-Specific 177 178 perlcn Perl for Simplified Chinese (in EUC-CN) 179 perljp Perl for Japanese (in EUC-JP) 180 perlko Perl for Korean (in EUC-KR) 181 perltw Perl for Traditional Chinese (in Big5) 182 183 =head2 Platform-Specific 184 185 perlaix Perl notes for AIX 186 perlamiga Perl notes for AmigaOS 187 perlapollo Perl notes for Apollo DomainOS 188 perlbeos Perl notes for BeOS 189 perlbs2000 Perl notes for POSIX-BC BS2000 190 perlce Perl notes for WinCE 191 perlcygwin Perl notes for Cygwin 192 perldgux Perl notes for DG/UX 193 perldos Perl notes for DOS 194 perlepoc Perl notes for EPOC 195 perlfreebsd Perl notes for FreeBSD 196 perlhpux Perl notes for HP-UX 197 perlhurd Perl notes for Hurd 198 perlirix Perl notes for Irix 199 perllinux Perl notes for Linux 200 perlmachten Perl notes for Power MachTen 201 perlmacos Perl notes for Mac OS (Classic) 202 perlmacosx Perl notes for Mac OS X 203 perlmint Perl notes for MiNT 204 perlmpeix Perl notes for MPE/iX 205 perlnetware Perl notes for NetWare 206 perlopenbsd Perl notes for OpenBSD 207 perlos2 Perl notes for OS/2 208 perlos390 Perl notes for OS/390 209 perlos400 Perl notes for OS/400 210 perlplan9 Perl notes for Plan 9 211 perlqnx Perl notes for QNX 212 perlriscos Perl notes for RISC OS 213 perlsolaris Perl notes for Solaris 214 perlsymbian Perl notes for Symbian 215 perltru64 Perl notes for Tru64 216 perluts Perl notes for UTS 217 perlvmesa Perl notes for VM/ESA 218 perlvms Perl notes for VMS 219 perlvos Perl notes for Stratus VOS 220 perlwin32 Perl notes for Windows 221 222 223 By default, the manpages listed above are installed in the 224 F</usr/local/man/> directory. 225 226 Extensive additional documentation for Perl modules is available. The 227 default configuration for perl will place this additional documentation 228 in the F</usr/local/lib/perl5/man> directory (or else in the F<man> 229 subdirectory of the Perl library directory). Some of this additional 230 documentation is distributed standard with Perl, but you'll also find 231 documentation for third-party modules there. 232 233 You should be able to view Perl's documentation with your man(1) 234 program by including the proper directories in the appropriate start-up 235 files, or in the MANPATH environment variable. To find out where the 236 configuration has installed the manpages, type: 237 238 perl -V:man.dir 239 240 If the directories have a common stem, such as F</usr/local/man/man1> 241 and F</usr/local/man/man3>, you need only to add that stem 242 (F</usr/local/man>) to your man(1) configuration files or your MANPATH 243 environment variable. If they do not share a stem, you'll have to add 244 both stems. 245 246 If that doesn't work for some reason, you can still use the 247 supplied F<perldoc> script to view module information. You might 248 also look into getting a replacement man program. 249 250 If something strange has gone wrong with your program and you're not 251 sure where you should look for help, try the B<-w> switch first. It 252 will often point out exactly where the trouble is. 253 254 =head1 DESCRIPTION 255 256 Perl is a language optimized for scanning arbitrary 257 text files, extracting information from those text files, and printing 258 reports based on that information. It's also a good language for many 259 system management tasks. The language is intended to be practical 260 (easy to use, efficient, complete) rather than beautiful (tiny, 261 elegant, minimal). 262 263 Perl combines (in the author's opinion, anyway) some of the best 264 features of C, B<sed>, B<awk>, and B<sh>, so people familiar with 265 those languages should have little difficulty with it. (Language 266 historians will also note some vestiges of B<csh>, Pascal, and even 267 BASIC-PLUS.) Expression syntax corresponds closely to C 268 expression syntax. Unlike most Unix utilities, Perl does not 269 arbitrarily limit the size of your data--if you've got the memory, 270 Perl can slurp in your whole file as a single string. Recursion is of 271 unlimited depth. And the tables used by hashes (sometimes called 272 "associative arrays") grow as necessary to prevent degraded 273 performance. Perl can use sophisticated pattern matching techniques to 274 scan large amounts of data quickly. Although optimized for 275 scanning text, Perl can also deal with binary data, and can make dbm 276 files look like hashes. Setuid Perl scripts are safer than C programs 277 through a dataflow tracing mechanism that prevents many stupid 278 security holes. 279 280 If you have a problem that would ordinarily use B<sed> or B<awk> or 281 B<sh>, but it exceeds their capabilities or must run a little faster, 282 and you don't want to write the silly thing in C, then Perl may be for 283 you. There are also translators to turn your B<sed> and B<awk> 284 scripts into Perl scripts. 285 286 But wait, there's more... 287 288 Begun in 1993 (see L<perlhist>), Perl version 5 is nearly a complete 289 rewrite that provides the following additional benefits: 290 291 =over 4 292 293 =item * 294 295 modularity and reusability using innumerable modules 296 297 Described in L<perlmod>, L<perlmodlib>, and L<perlmodinstall>. 298 299 =item * 300 301 embeddable and extensible 302 303 Described in L<perlembed>, L<perlxstut>, L<perlxs>, L<perlcall>, 304 L<perlguts>, and L<xsubpp>. 305 306 =item * 307 308 roll-your-own magic variables (including multiple simultaneous DBM 309 implementations) 310 311 Described in L<perltie> and L<AnyDBM_File>. 312 313 =item * 314 315 subroutines can now be overridden, autoloaded, and prototyped 316 317 Described in L<perlsub>. 318 319 =item * 320 321 arbitrarily nested data structures and anonymous functions 322 323 Described in L<perlreftut>, L<perlref>, L<perldsc>, and L<perllol>. 324 325 =item * 326 327 object-oriented programming 328 329 Described in L<perlobj>, L<perlboot>, L<perltoot>, L<perltooc>, 330 and L<perlbot>. 331 332 =item * 333 334 support for light-weight processes (threads) 335 336 Described in L<perlthrtut> and L<threads>. 337 338 =item * 339 340 support for Unicode, internationalization, and localization 341 342 Described in L<perluniintro>, L<perllocale> and L<Locale::Maketext>. 343 344 =item * 345 346 lexical scoping 347 348 Described in L<perlsub>. 349 350 =item * 351 352 regular expression enhancements 353 354 Described in L<perlre>, with additional examples in L<perlop>. 355 356 =item * 357 358 enhanced debugger and interactive Perl environment, 359 with integrated editor support 360 361 Described in L<perldebtut>, L<perldebug> and L<perldebguts>. 362 363 =item * 364 365 POSIX 1003.1 compliant library 366 367 Described in L<POSIX>. 368 369 =back 370 371 Okay, that's I<definitely> enough hype. 372 373 =head1 AVAILABILITY 374 375 Perl is available for most operating systems, including virtually 376 all Unix-like platforms. See L<perlport/"Supported Platforms"> 377 for a listing. 378 379 =head1 ENVIRONMENT 380 381 See L<perlrun>. 382 383 =head1 AUTHOR 384 385 Larry Wall <larry@wall.org>, with the help of oodles of other folks. 386 387 If your Perl success stories and testimonials may be of help to others 388 who wish to advocate the use of Perl in their applications, 389 or if you wish to simply express your gratitude to Larry and the 390 Perl developers, please write to perl-thanks@perl.org . 391 392 =head1 FILES 393 394 "@INC" locations of perl libraries 395 396 =head1 SEE ALSO 397 398 a2p awk to perl translator 399 s2p sed to perl translator 400 401 http://www.perl.org/ the Perl homepage 402 http://www.perl.com/ Perl articles (O'Reilly) 403 http://www.cpan.org/ the Comprehensive Perl Archive 404 http://www.pm.org/ the Perl Mongers 405 406 =head1 DIAGNOSTICS 407 408 The C<use warnings> pragma (and the B<-w> switch) produces some 409 lovely diagnostics. 410 411 See L<perldiag> for explanations of all Perl's diagnostics. The C<use 412 diagnostics> pragma automatically turns Perl's normally terse warnings 413 and errors into these longer forms. 414 415 Compilation errors will tell you the line number of the error, with an 416 indication of the next token or token type that was to be examined. 417 (In a script passed to Perl via B<-e> switches, each 418 B<-e> is counted as one line.) 419 420 Setuid scripts have additional constraints that can produce error 421 messages such as "Insecure dependency". See L<perlsec>. 422 423 Did we mention that you should definitely consider using the B<-w> 424 switch? 425 426 =head1 BUGS 427 428 The B<-w> switch is not mandatory. 429 430 Perl is at the mercy of your machine's definitions of various 431 operations such as type casting, atof(), and floating-point 432 output with sprintf(). 433 434 If your stdio requires a seek or eof between reads and writes on a 435 particular stream, so does Perl. (This doesn't apply to sysread() 436 and syswrite().) 437 438 While none of the built-in data types have any arbitrary size limits 439 (apart from memory size), there are still a few arbitrary limits: a 440 given variable name may not be longer than 251 characters. Line numbers 441 displayed by diagnostics are internally stored as short integers, 442 so they are limited to a maximum of 65535 (higher numbers usually being 443 affected by wraparound). 444 445 You may mail your bug reports (be sure to include full configuration 446 information as output by the myconfig program in the perl source 447 tree, or by C<perl -V>) to perlbug@perl.org . If you've succeeded 448 in compiling perl, the B<perlbug> script in the F<utils/> subdirectory 449 can be used to help mail in a bug report. 450 451 Perl actually stands for Pathologically Eclectic Rubbish Lister, but 452 don't tell anyone I said that. 453 454 =head1 NOTES 455 456 The Perl motto is "There's more than one way to do it." Divining 457 how many more is left as an exercise to the reader. 458 459 The three principal virtues of a programmer are Laziness, 460 Impatience, and Hubris. See the Camel Book for why. 461
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |