Add built local::lib
[catagits/Gitalist.git] / local-lib5 / man / man3 / File::Remove.3pm
1 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sh \" Subsection heading
6 .br
7 .if t .Sp
8 .ne 5
9 .PP
10 \fB\\$1\fR
11 .PP
12 ..
13 .de Sp \" Vertical space (when we can't use .PP)
14 .if t .sp .5v
15 .if n .sp
16 ..
17 .de Vb \" Begin verbatim text
18 .ft CW
19 .nf
20 .ne \\$1
21 ..
22 .de Ve \" End verbatim text
23 .ft R
24 .fi
25 ..
26 .\" Set up some character translations and predefined strings.  \*(-- will
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28 .\" double quote, and \*(R" will give a right double quote.  | will give a
29 .\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
30 .\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
31 .\" expand to `' in nroff, nothing in troff, for use with C<>.
32 .tr \(*W-|\(bv\*(Tr
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
34 .ie n \{\
35 .    ds -- \(*W-
36 .    ds PI pi
37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
39 .    ds L" ""
40 .    ds R" ""
41 .    ds C` ""
42 .    ds C' ""
43 'br\}
44 .el\{\
45 .    ds -- \|\(em\|
46 .    ds PI \(*p
47 .    ds L" ``
48 .    ds R" ''
49 'br\}
50 .\"
51 .\" If the F register is turned on, we'll generate index entries on stderr for
52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53 .\" entries marked with X<> in POD.  Of course, you'll have to process the
54 .\" output yourself in some meaningful fashion.
55 .if \nF \{\
56 .    de IX
57 .    tm Index:\\$1\t\\n%\t"\\$2"
58 ..
59 .    nr % 0
60 .    rr F
61 .\}
62 .\"
63 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
64 .\" way too many mistakes in technical documents.
65 .hy 0
66 .if n .na
67 .\"
68 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
69 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
70 .    \" fudge factors for nroff and troff
71 .if n \{\
72 .    ds #H 0
73 .    ds #V .8m
74 .    ds #F .3m
75 .    ds #[ \f1
76 .    ds #] \fP
77 .\}
78 .if t \{\
79 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
80 .    ds #V .6m
81 .    ds #F 0
82 .    ds #[ \&
83 .    ds #] \&
84 .\}
85 .    \" simple accents for nroff and troff
86 .if n \{\
87 .    ds ' \&
88 .    ds ` \&
89 .    ds ^ \&
90 .    ds , \&
91 .    ds ~ ~
92 .    ds /
93 .\}
94 .if t \{\
95 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
96 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
97 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
98 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
99 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
100 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
101 .\}
102 .    \" troff and (daisy-wheel) nroff accents
103 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
104 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
105 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
106 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
107 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
108 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
109 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
110 .ds ae a\h'-(\w'a'u*4/10)'e
111 .ds Ae A\h'-(\w'A'u*4/10)'E
112 .    \" corrections for vroff
113 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
114 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
115 .    \" for low resolution devices (crt and lpr)
116 .if \n(.H>23 .if \n(.V>19 \
117 \{\
118 .    ds : e
119 .    ds 8 ss
120 .    ds o a
121 .    ds d- d\h'-1'\(ga
122 .    ds D- D\h'-1'\(hy
123 .    ds th \o'bp'
124 .    ds Th \o'LP'
125 .    ds ae ae
126 .    ds Ae AE
127 .\}
128 .rm #[ #] #H #V #F C
129 .\" ========================================================================
130 .\"
131 .IX Title "File::Remove 3"
132 .TH File::Remove 3 "2008-07-10" "perl v5.8.7" "User Contributed Perl Documentation"
133 .SH "NAME"
134 File::Remove \- Remove files and directories
135 .SH "SYNOPSIS"
136 .IX Header "SYNOPSIS"
137 .Vb 1
138 \&    use File::Remove 'remove';
139 .Ve
140 .PP
141 .Vb 2
142 \&    # removes (without recursion) several files
143 \&    remove( '*.c', '*.pl' );
144 .Ve
145 .PP
146 .Vb 2
147 \&    # removes (with recursion) several directories
148 \&    remove( \e1, qw{directory1 directory2} );
149 .Ve
150 .PP
151 .Vb 2
152 \&    # removes (with recursion) several files and directories
153 \&    remove( \e1, qw{file1 file2 directory1 *~} );
154 .Ve
155 .PP
156 .Vb 2
157 \&    # trashes (with support for undeleting later) several files
158 \&    trash( '*~' );
159 .Ve
160 .SH "DESCRIPTION"
161 .IX Header "DESCRIPTION"
162 \&\fBFile::Remove::remove\fR removes files and directories.  It acts like
163 \&\fB/bin/rm\fR, for the most part.  Although \f(CW\*(C`unlink\*(C'\fR can be given a list
164 of files, it will not remove directories; this module remedies that.
165 It also accepts wildcards, * and ?, as arguments for filenames.
166 .PP
167 \&\fBFile::Remove::trash\fR accepts the same arguments as \fBremove\fR, with
168 the addition of an optional, infrequently used \*(L"other platforms\*(R"
169 hashref.
170 .SH "SUBROUTINES"
171 .IX Header "SUBROUTINES"
172 .Sh "remove"
173 .IX Subsection "remove"
174 Removes files and directories.  Directories are removed recursively like
175 in \fBrm \-rf\fR if the first argument is a reference to a scalar that
176 evaluates to true.  If the first arguemnt is a reference to a scalar
177 then it is used as the value of the recursive flag.  By default it's
178 false so only pass \e1 to it.
179 .PP
180 In list context it returns a list of files/directories removed, in
181 scalar context it returns the number of files/directories removed.  The
182 list/number should match what was passed in if everything went well.
183 .Sh "rm"
184 .IX Subsection "rm"
185 Just calls \fBremove\fR.  It's there for people who get tired of typing
186 \&\fBremove\fR.
187 .Sh "clear"
188 .IX Subsection "clear"
189 The \f(CW\*(C`clear\*(C'\fR function is a version of \f(CW\*(C`remove\*(C'\fR designed for
190 use in test scripts. It takes a list of paths that it will both
191 initially delete during the current test run, and then further
192 flag for deletion at END-time as a convenience for the next test
193 run.
194 .Sh "trash"
195 .IX Subsection "trash"
196 Removes files and directories, with support for undeleting later.
197 Accepts an optional \*(L"other platforms\*(R" hashref, passing the remaining
198 arguments to \fBremove\fR.
199 .IP "Win32" 4
200 .IX Item "Win32"
201 Requires Win32::FileOp.
202 .Sp
203 Installation not actually enforced on Win32 yet, since Win32::FileOp
204 has badly failing dependencies at time of writing.
205 .IP "\s-1OS\s0 X" 4
206 .IX Item "OS X"
207 Requires Mac::Glue.
208 .IP "Other platforms" 4
209 .IX Item "Other platforms"
210 The first argument to \fItrash()\fR must be a hashref with two keys,
211 \&'rmdir' and 'unlink', each referencing a coderef.  The coderefs
212 will be called with the filenames that are to be deleted.
213 .SH "SUPPORT"
214 .IX Header "SUPPORT"
215 Bugs should always be submitted via the \s-1CPAN\s0 bug tracker
216 .PP
217 <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=File\-Remove>
218 .PP
219 For other issues, contact the maintainer.
220 .SH "AUTHOR"
221 .IX Header "AUTHOR"
222 Adam Kennedy <adamk@cpan.org>
223 .SH "COPYRIGHT"
224 .IX Header "COPYRIGHT"
225 Some parts copyright 2006 \- 2008 Adam Kennedy.
226 .PP
227 Taken over by Adam Kennedy <adamk@cpan.org>, to fix the
228 \&\*(L"deep readonly files\*(R" bug, and do some more cleaning up.
229 .PP
230 Some parts copyright 2004 \- 2005 Richard Soderberg.
231 .PP
232 Taken over by Richard Soderberg <perl@crystalflame.net>, so as
233 to port it to File::Spec and add tests.
234 .PP
235 Original copyright: 1998 by Gabor Egressy, <gabor@vmunix.com>.
236 .PP
237 This program is free software; you can redistribute and/or modify it under
238 the same terms as Perl itself.