[3170] | 1 | GNU findutils NEWS - User visible changes. -*- outline -*- (allout)
|
---|
| 2 | * Major changes in release 4.3.2
|
---|
| 3 |
|
---|
| 4 | ** Bug Fixes
|
---|
| 5 |
|
---|
| 6 | #18222: find -printf '%H %P' once again prints the right result if
|
---|
| 7 | more than one start point was given on the command line.
|
---|
| 8 |
|
---|
| 9 | #17782: find -execdir now correctly puts the prefix "./" before the
|
---|
| 10 | expansion of "{}" rather than at the start of the argument it appears
|
---|
| 11 | in. Please note that if you use the -exec or -execdir actions with a
|
---|
| 12 | shell, then you may be vulnerable to shell code injection attacks, so
|
---|
| 13 | don't do that. It's not a security defect in find - you should not be
|
---|
| 14 | passing untrusted data (such as file names chosen by other people) to
|
---|
| 15 | the shell.
|
---|
| 16 |
|
---|
| 17 | #17490: find -regex generated a segfault in findutils-4.3.1, but this
|
---|
| 18 | is fixed in findutils-4.3.2.
|
---|
| 19 |
|
---|
| 20 | #17477: find -printf '%' (that is, where the format has a trailing %)
|
---|
| 21 | now generates an error message.
|
---|
| 22 |
|
---|
| 23 | #17372: The fts-based find executable (the default configuration uses
|
---|
| 24 | fts) is now much faster when -maxdepth is used on filesystems with
|
---|
| 25 | high fanouts.
|
---|
| 26 |
|
---|
| 27 | #15531: The -prune action now behaves correctly when applied to a file.
|
---|
| 28 |
|
---|
| 29 | ** Functional changes
|
---|
| 30 |
|
---|
| 31 | The slocate database format is now supported. Preliminary changes
|
---|
| 32 | intended to eventually allow setuid operation of locate have also been
|
---|
| 33 | made. For the moment, please don't install GNU locate as a
|
---|
| 34 | set-user-ID program (except for testing purposes; if you do so, please
|
---|
| 35 | make sure that untrusted users cannot execute the set-user-ID locate
|
---|
| 36 | program).
|
---|
| 37 |
|
---|
| 38 | Use of an slocate database which was built with a nonzero security
|
---|
| 39 | mode (at the moment, GNU updatedb will not do this) forces locate's
|
---|
| 40 | "-e" option to be turned on, which has an effect on the "-S" option
|
---|
| 41 | which is probably surprising for most users.
|
---|
| 42 |
|
---|
| 43 |
|
---|
| 44 | ** Documentation Fixes
|
---|
| 45 |
|
---|
| 46 | The global effect of options (other than -daystart and -follow) is now
|
---|
| 47 | explained more clearly in the manual page. Savannah bug #15360.
|
---|
| 48 |
|
---|
| 49 |
|
---|
| 50 | * Major changes in release 4.3.1
|
---|
| 51 |
|
---|
| 52 | ** Bug Fixes
|
---|
| 53 |
|
---|
| 54 | Find now follows POSIX rules for determining where directories end and
|
---|
| 55 | expressions start. This means that "find \(1 \!2 \, \)" now searches
|
---|
| 56 | in the four named directories, rather than trying to parse an
|
---|
| 57 | expression. (Savannah bug #15235).
|
---|
| 58 |
|
---|
| 59 | You now get a more helpful error message when you use command lines
|
---|
| 60 | which have missing expressions, such as
|
---|
| 61 | find . ( )
|
---|
| 62 | find . !
|
---|
| 63 | find . -a
|
---|
| 64 | find . \( -not \)
|
---|
| 65 | find . \( -true -a
|
---|
| 66 |
|
---|
| 67 | Savannah bug #15800: If find finds more subdirectories within a parent
|
---|
| 68 | directory than it previously expected to based on the link count of
|
---|
| 69 | the parent, the resulting error message now gives the correct
|
---|
| 70 | directory name (previously an error message was issued but it
|
---|
| 71 | specified the wrong directory).
|
---|
| 72 |
|
---|
| 73 | Savannah bug #16738: "find .... -exec ... {} +" now works if you have
|
---|
| 74 | a large environment and many files must be passed to the -exec
|
---|
| 75 | action. The same problem affected the -execdir action, though since
|
---|
| 76 | the number of files in a given directory will normally be smaller, the
|
---|
| 77 | problem was worse for -exec.
|
---|
| 78 |
|
---|
| 79 | Savannah bug #16579: Updatedb now works if it is running as a user
|
---|
| 80 | whose login shell is not actually a shell.
|
---|
| 81 |
|
---|
| 82 | There have also been a number of documentation improvements (includng
|
---|
| 83 | Savannah bug #16269).
|
---|
| 84 |
|
---|
| 85 | ** Functional changes
|
---|
| 86 |
|
---|
| 87 | For find, debug output can now be enabled at runtime with the -D
|
---|
| 88 | option. This causes the printing of various sorts of information
|
---|
| 89 | about find's internal state and progress.
|
---|
| 90 |
|
---|
| 91 | The find option -nowarn cannot itself produce a warning (this used to
|
---|
| 92 | happen with commands like "find . -name quux -nowarn -print".
|
---|
| 93 |
|
---|
| 94 | ** Performance Enhancements
|
---|
| 95 |
|
---|
| 96 | Find now has a rudimentary cost-based optimiser. It has an idea of
|
---|
| 97 | the basic cost of each test (i.e. that -name is very cheap while -size
|
---|
| 98 | is more expensive). It re-orders tests bearing in mind the cost of
|
---|
| 99 | each test and its likely success. Predicates with side effects (for
|
---|
| 100 | example -delete or -exec) are not reordered. The optimiser is not
|
---|
| 101 | yet enabled by default, but the new option -O controls the query
|
---|
| 102 | optimisation level. To see this in action, try
|
---|
| 103 | find -D opt -O3 . -type f -o -type c -o -size 555 -name Z
|
---|
| 104 | and compare the optimised query with:
|
---|
| 105 | find -D opt -O3 . -size 555 -o -type c -o -type f -name Z
|
---|
| 106 | and
|
---|
| 107 | find -D opt . -size 555 -o -type c -o -type f -name Z
|
---|
| 108 |
|
---|
| 109 | Over time, as optimisations are proven to be robust and correct, they
|
---|
| 110 | will be moved to lower optimisation levels. Some optimisations have
|
---|
| 111 | always been performed by find (for example -name is always done early
|
---|
| 112 | if possible).
|
---|
| 113 |
|
---|
| 114 | ** Translations
|
---|
| 115 |
|
---|
| 116 | Findutils 4.3.1 includes updated translations for the following
|
---|
| 117 | languages:
|
---|
| 118 | Vietnamese, Belarusian, Catalan, Danish, German, Greek, Esperanto,
|
---|
| 119 | Spanish, Estonian, Finnish, French, Irish, Galician, Croatian, Hungarian,
|
---|
| 120 | Indonesian, Italian, Japanese, Korean, Luganda, Malay, Dutch, Polish,
|
---|
| 121 | Portuguese, Brazilian Portuguese, Romanian, Russian, Kinyarwanda,
|
---|
| 122 | Slovak, Slovenian, Serbian, Swedish, Turkish, Chinese (simplified),
|
---|
| 123 | Chinese (traditional), Bulgarian
|
---|
| 124 |
|
---|
| 125 | * Major changes in release 4.3.0
|
---|
| 126 |
|
---|
| 127 | The 4.3.x release series are currently 'development' releases. Please
|
---|
| 128 | test it, but think carefully before installing it in a production
|
---|
| 129 | system. New features in findutils-4.3.x are under development; they
|
---|
| 130 | may change or go away.
|
---|
| 131 |
|
---|
| 132 | All changes up to and including findutils-4.2.27 are included in this
|
---|
| 133 | release. In addition the following changes are new in this release:
|
---|
| 134 |
|
---|
| 135 | ** Functional Changes
|
---|
| 136 |
|
---|
| 137 | By default, find now uses the fts() function to search the file
|
---|
| 138 | system. The use of fts greatly increases find's ability to search
|
---|
| 139 | extremely deep directory hierarchites.
|
---|
| 140 |
|
---|
| 141 | You can tell that the version of find you are using uses FTS, because
|
---|
| 142 | the output of "find --version" will include the word "FTS".
|
---|
| 143 |
|
---|
| 144 | Currently two binaries for 'find' are built. The configure option
|
---|
| 145 | --without-fts can be used to select whether 'find' uses fts:
|
---|
| 146 |
|
---|
| 147 | With fts Without fts
|
---|
| 148 | default configuration find oldfind
|
---|
| 149 | configure --with-fts find oldfind
|
---|
| 150 | configure --without-fts ftsfind find
|
---|
| 151 |
|
---|
| 152 | New tests, -readable, -writable, -executable. These check that a file
|
---|
| 153 | can be read, written or executed respectively.
|
---|
| 154 |
|
---|
| 155 | * Major changes in release 4.2.27
|
---|
| 156 |
|
---|
| 157 | ** Warnings of Future Changes
|
---|
| 158 |
|
---|
| 159 | The test -perm /000 currently matches no files, but for greater
|
---|
| 160 | consistency with -perm -000, this will be changed to match all files;
|
---|
| 161 | this change will probably be made in early 2006. Meanwhile, a warning
|
---|
| 162 | message is given if you do this.
|
---|
| 163 |
|
---|
| 164 | ** Bug Fixes
|
---|
| 165 |
|
---|
| 166 | If xargs is invoked with many short arguments on PPC systems running
|
---|
| 167 | the Linux kernel, we no longer get an "argument list too long" error
|
---|
| 168 | from the operating system.
|
---|
| 169 |
|
---|
| 170 | Fixed a bug in the test suite which caused it to spuriously fail on
|
---|
| 171 | systems where ARG_MAX is different to the value used by the Linux
|
---|
| 172 | kernel on 32-bit x86-architecture systems.
|
---|
| 173 |
|
---|
| 174 | On systems running the Linux kernel, "find -printf %F" no longer
|
---|
| 175 | produces the wrong answer for files on filesystems that have been
|
---|
| 176 | remounted elsewhere using "mount --bind". (Savannah bug #14921).
|
---|
| 177 |
|
---|
| 178 | ** Documentation Changes
|
---|
| 179 |
|
---|
| 180 | Following some extensive and detailed review comments from Aaron
|
---|
| 181 | Hawley, the material in the manual pages and the Texinfo manual are
|
---|
| 182 | now synchronised.
|
---|
| 183 |
|
---|
| 184 | The %M format specifier of "find -printf" is now documented, although
|
---|
| 185 | it has existed since release 4.2.5.
|
---|
| 186 |
|
---|
| 187 | The 'find' manual page now correctly documents the fact that -regex
|
---|
| 188 | defaults to using Emacs-style regular expressions (though this can be
|
---|
| 189 | changed).
|
---|
| 190 |
|
---|
| 191 | * Major changes in release 4.2.26
|
---|
| 192 |
|
---|
| 193 | ** Public Service Announcements
|
---|
| 194 |
|
---|
| 195 | I'd like to point out a second time that the interpretation of '-perm
|
---|
| 196 | +mode' has changed to be more POSIX-compliant. If you want the old
|
---|
| 197 | behaviour of the GNU extension you should use '-perm /mode'. See the
|
---|
| 198 | NEWS entry for findutils version 4.2.21 for details.
|
---|
| 199 |
|
---|
| 200 | ** Functional Changes
|
---|
| 201 |
|
---|
| 202 | The xargs command now supports a new option (--delimiter) which allows
|
---|
| 203 | input items to be separated by characters other than null and
|
---|
| 204 | whitespace. This resolves Savannah support request sr #102914.
|
---|
| 205 |
|
---|
| 206 | Sometimes find needs to read the /etc/mtab file (or perform the
|
---|
| 207 | equivalent operation on systems not using /etc/mtab). If this
|
---|
| 208 | information is needed butnot available, find now exits with an error
|
---|
| 209 | message non-zero status. If the information is not needed, find will
|
---|
| 210 | not spuriously fail.
|
---|
| 211 |
|
---|
| 212 | A new xargs option --delimiter allows the input delimiter to be
|
---|
| 213 | changed (previously \0 was the only choice unless you use the -L
|
---|
| 214 | option, which changes other semantics too).
|
---|
| 215 |
|
---|
| 216 | ** Bug Fixes
|
---|
| 217 |
|
---|
| 218 | If the environment size is too large to allow xargs to operate
|
---|
| 219 | normally, 'xargs --help' still works (now).
|
---|
| 220 |
|
---|
| 221 | If the input to xargs is a large number of very short options (for
|
---|
| 222 | example, one character each), earlier versions of xargs would fail
|
---|
| 223 | with 'Argument list too long'. However, since this is precisely the
|
---|
| 224 | problem that xargs was invented to solve, this is a bug. Hence on
|
---|
| 225 | those systems we now correctly use a shorter command line. This
|
---|
| 226 | problem particularly affected 64-bit Linux systems because of the
|
---|
| 227 | larger size of pointers, although 32-bit Linux systems were also
|
---|
| 228 | affected (albeit for longer command lines). In theory the same
|
---|
| 229 | problem could affect 'find -exec {} +', but that's much less likely
|
---|
| 230 | (even so, the bug is fixed there too).
|
---|
| 231 |
|
---|
| 232 | Bugfix for an unusual failure mode (Savannah bug #14842) where an
|
---|
| 233 | attempt to allocate more space for directory contents succeeds but is
|
---|
| 234 | incorrectly diagnosed as a failure. The likelihood of you
|
---|
| 235 | experiencing this depends on your architecture, operating system and
|
---|
| 236 | resource limits. This failure has been observed in a directory
|
---|
| 237 | containing 35396 entries.
|
---|
| 238 |
|
---|
| 239 | ** Documentation Changes
|
---|
| 240 |
|
---|
| 241 | The EXAMPLES section of the find manual page now correctly describes
|
---|
| 242 | the symbolic and octal modes for the -perm test.
|
---|
| 243 |
|
---|
| 244 | The documentation and "--help" usage information for the -L, -l, -I
|
---|
| 245 | and -i options have been clarified (but the behaviour has not changed).
|
---|
| 246 |
|
---|
| 247 | The documentation now explains more clearly what happens when you use
|
---|
| 248 | "-L -type l".
|
---|
| 249 |
|
---|
| 250 | * Major changes in release 4.2.25
|
---|
| 251 |
|
---|
| 252 | ** Bug Fixes
|
---|
| 253 |
|
---|
| 254 | find -perm /440 (which should succeed if a file is readable by its
|
---|
| 255 | owner or group) now works. Previously there was a bug which caused
|
---|
| 256 | this to be treated as "find -perm 440".
|
---|
| 257 |
|
---|
| 258 | Some files in the xargs test suite have been renamed to avoid problems
|
---|
| 259 | on operating systems whoch cannot distinguish filenames on the basis
|
---|
| 260 | of upper/lower case distinctions.
|
---|
| 261 |
|
---|
| 262 | The software now builds on Cygwin, including the generated file
|
---|
| 263 | regexprops.texi.
|
---|
| 264 |
|
---|
| 265 | Findutils should now build once again on systems supporting AFS, but
|
---|
| 266 | this support has not recently been fully tested. Findutils should
|
---|
| 267 | also (once again) build on Cygwin.
|
---|
| 268 |
|
---|
| 269 | ** Other Changes
|
---|
| 270 |
|
---|
| 271 | The test suite for find is now much more extensive.
|
---|
| 272 |
|
---|
| 273 | * Major changes in release 4.2.24
|
---|
| 274 |
|
---|
| 275 | ** Documentation Changes
|
---|
| 276 |
|
---|
| 277 | The manual now includes a "Worked Examples" section which talks about
|
---|
| 278 | the various ways in which findutils can be used to perform common
|
---|
| 279 | tasks, and why some of these alternatives are better than others.
|
---|
| 280 |
|
---|
| 281 | The -I option of xargs (which is required by the POSIX standard) is
|
---|
| 282 | now documented.
|
---|
| 283 |
|
---|
| 284 | We now document the fact that find ensures that commands run by -ok
|
---|
| 285 | and -okdir don't steal find's input. Find does this by redirecting
|
---|
| 286 | the command's standard input from stdin.
|
---|
| 287 |
|
---|
| 288 | Many documentation readability enhancements and proofreading fixes
|
---|
| 289 | were contributed by Aaron Hawley.
|
---|
| 290 |
|
---|
| 291 | ** Functional Changes
|
---|
| 292 |
|
---|
| 293 | *** Functional changes in locate
|
---|
| 294 |
|
---|
| 295 | The "--regex" option of locate now assumes the regular expression to
|
---|
| 296 | be in the same syntax as is used in GNU Emacs, though this can be
|
---|
| 297 | changed with the new option --regextype. This is a change from the
|
---|
| 298 | existing behaviour (which was to use POSIX Basic Regular Expressions).
|
---|
| 299 | Since this feature is releatively new anyway, I though it was more
|
---|
| 300 | useful to have compatibility between regular expression handling in
|
---|
| 301 | find and locate than to maintain the short-lived previous behaviour of
|
---|
| 302 | locate.
|
---|
| 303 |
|
---|
| 304 | The locate program now also supports a "--regextype" long option which
|
---|
| 305 | controls which regular expression syntax is understood by locate.
|
---|
| 306 | This is a long option and has no single-letter 'short option'
|
---|
| 307 | equivalent.
|
---|
| 308 |
|
---|
| 309 | *** Functional changes in find
|
---|
| 310 |
|
---|
| 311 | The regular expression syntax understood by "find" can be changed with
|
---|
| 312 | the -regextype option; this option is positional, meaning that you can
|
---|
| 313 | have several tests, each using a distinct syntax (this is not
|
---|
| 314 | recommended practice however).
|
---|
| 315 |
|
---|
| 316 | The default regular expression syntax is substantially the same as
|
---|
| 317 | that recognised by GNU Emacs, except for the fact that "." will match
|
---|
| 318 | a newline.
|
---|
| 319 |
|
---|
| 320 | The leaf optimisation can be disabled with the configure option
|
---|
| 321 | "--disable-leaf-optimisation", which is equivalent to specifying
|
---|
| 322 | "-noleaf" on all find command lines. This is useful for systems
|
---|
| 323 | having filesystems which do not provide traditional Unix behaviour for
|
---|
| 324 | the link count on directories (for example Cygwin and the Solaris 9
|
---|
| 325 | HSFS implementation).
|
---|
| 326 |
|
---|
| 327 | ** Bug Fixes
|
---|
| 328 |
|
---|
| 329 | *** Bug Fixes for find
|
---|
| 330 |
|
---|
| 331 | The -iregex test now works once again on systems that lack
|
---|
| 332 | re_search() (that is, systems on which findutils needs to use the
|
---|
| 333 | gnulib version of this function).
|
---|
| 334 |
|
---|
| 335 | find -regex now once again uses GNU Emacs-compatible regular
|
---|
| 336 | expressions.
|
---|
| 337 |
|
---|
| 338 | If invoked with stderr closed, the -fprint and -fprintf actions now no
|
---|
| 339 | longer cause error messages to be sent into the output file.
|
---|
| 340 |
|
---|
| 341 | If the link count of a directory is less that two, the leaf
|
---|
| 342 | optimisation is now disabled for that directory. This should allow
|
---|
| 343 | searching of non-Unix filesystems to be more reliable on systems that
|
---|
| 344 | don't take the trouble to make their filesystems look like traditional
|
---|
| 345 | Unix filesystems. Some filesystems don't even take the trouble to
|
---|
| 346 | have a link count of less than two and for these, -noleaf is still
|
---|
| 347 | required unless --disable-leaf-optimisation was used at configure time.
|
---|
| 348 |
|
---|
| 349 | The "%Y" directive for the -printf action now no longer changes find's
|
---|
| 350 | idea of the mode of the file, so this means among other things that
|
---|
| 351 | "-printf %Y %y" now works properly. This is Savannah bug #13973.
|
---|
| 352 |
|
---|
| 353 | * Major changes in release 4.2.23
|
---|
| 354 |
|
---|
| 355 | ** Documentation Changes
|
---|
| 356 |
|
---|
| 357 | The -L and -I options of xargs are currently incompatible (but should
|
---|
| 358 | not be).
|
---|
| 359 |
|
---|
| 360 | Improved the documentation for -execdir and -okdir.
|
---|
| 361 |
|
---|
| 362 | ** Functional Changes to updatedb
|
---|
| 363 |
|
---|
| 364 | File names ending in "/" which are specified as an argument to
|
---|
| 365 | --prunepaths (or in $PRUNEPATHS) don't work, so we now issue an error
|
---|
| 366 | message if the user tries to do that. The obvious exception of course
|
---|
| 367 | is "/" which does work and is not rejected.
|
---|
| 368 |
|
---|
| 369 |
|
---|
| 370 | * Major changes in release 4.2.22
|
---|
| 371 |
|
---|
| 372 | ** Security Fixes
|
---|
| 373 |
|
---|
| 374 | If a directory entry searched with "find -L" is a symbolic link to
|
---|
| 375 | ".", we no longer loop indefinitely. This problem affected find
|
---|
| 376 | versions 4.2.19, 4.2.20 and 4.2.21. This problem allows users to make
|
---|
| 377 | "find" loop indefinitely. This is in effect a denial of service and
|
---|
| 378 | could be used to prevent updates to the locate database or to defeat
|
---|
| 379 | file security checks based on find. However, it should be noted that
|
---|
| 380 | you should not use "find -L" in security-sensitive scenarios.
|
---|
| 381 |
|
---|
| 382 | ** Other Bug Fixes
|
---|
| 383 |
|
---|
| 384 | None in this release.
|
---|
| 385 |
|
---|
| 386 | ** Functional Changes to locate
|
---|
| 387 |
|
---|
| 388 | A locate database can now be supplied on stdin, using '-' as a element
|
---|
| 389 | of the database-path. If more than one database-path element is '-',
|
---|
| 390 | later instances are ignored.
|
---|
| 391 |
|
---|
| 392 | A new option to locate, '--all' ('-A') causes matches to be limited to
|
---|
| 393 | entries which match all given patterns, not entries which match
|
---|
| 394 | one or more patterns.
|
---|
| 395 |
|
---|
| 396 | ** Documentation Changes
|
---|
| 397 |
|
---|
| 398 | Some typos in the manual pages have been fixed. Various parts of the
|
---|
| 399 | manual now point out that it is good practice to quote the argument of
|
---|
| 400 | "-name". The manpage now has a "NON-BUGS" section which explains some
|
---|
| 401 | symptoms that look like bugs but aren't. The explanations of the "%k"
|
---|
| 402 | and "%b" directives to "find -printf" have been imrpoved.
|
---|
| 403 |
|
---|
| 404 |
|
---|
| 405 | * Major changes in release 4.2.21
|
---|
| 406 | ** Functional Changes to find
|
---|
| 407 |
|
---|
| 408 | The GNU extension "find ... -perm +MODE" has been withdrawn because it
|
---|
| 409 | is incompatible with POSIX in obscure cases like "find ... -perm ++r".
|
---|
| 410 | Use the new syntax "find ... -perm /MODE" instead. Old usages will
|
---|
| 411 | still continue to work, so long as they don't conflict with POSIX.
|
---|
| 412 |
|
---|
| 413 | If the output is going to a terminal, the -print, -fprint, -printf and
|
---|
| 414 | -fprintf actions now quote "unusual" characters to prevent unwanted
|
---|
| 415 | effects on the terminal. See "Unusual Characters in File Names" for
|
---|
| 416 | further details. There is no change to the behaviour when the output
|
---|
| 417 | is not going to a terminal. The locate program does the same thing,
|
---|
| 418 | unless the -0 option is in effect (in which case the filenames are
|
---|
| 419 | printed as-is).
|
---|
| 420 |
|
---|
| 421 | ** Functional Changes to locate
|
---|
| 422 |
|
---|
| 423 | The locate command will now read each locate database at most once.
|
---|
| 424 | This means that if you are using multiple databases and are searching
|
---|
| 425 | for more than one name, the results will now be printed in a different
|
---|
| 426 | order (and if you specified a small limit with --limit, you may get a
|
---|
| 427 | different set of results).
|
---|
| 428 |
|
---|
| 429 | A new option '--print' for locate causes it to print the matching
|
---|
| 430 | results even if the '--count' or '--statistics' option is in effect.
|
---|
| 431 |
|
---|
| 432 | ** Bug Fixes
|
---|
| 433 | find /blah/blah/blah -depth -empty now works once again.
|
---|
| 434 |
|
---|
| 435 | The -regex and -iregex tests of find now correctly accept POSIX Basic
|
---|
| 436 | Regular Expressions. (Savannah bug #12999)
|
---|
| 437 |
|
---|
| 438 | The updatedb program now works on systems where "su" does not support
|
---|
| 439 | the "-s" option, for example Solaris.
|
---|
| 440 |
|
---|
| 441 | * Major changes in release 4.2.20
|
---|
| 442 | ** Internationalization and Localization
|
---|
| 443 | Updated Vietnamese and Dutch translations.
|
---|
| 444 |
|
---|
| 445 | ** Bug Fixes
|
---|
| 446 | Minor bugfix affecting only those who compile from the CVS repository,
|
---|
| 447 | as opposed to those who compile from the source releases.
|
---|
| 448 |
|
---|
| 449 | * Major changes in release 4.2.19
|
---|
| 450 | ** Bug Fixes
|
---|
| 451 |
|
---|
| 452 | find should now no longer hang on systems which lack the O_NOFOLLOW
|
---|
| 453 | flag to open(2) and which are clients of an unresponsive NFS server
|
---|
| 454 | (Savannah bug #12044).
|
---|
| 455 |
|
---|
| 456 | We now avoid inappropriately failing for "find -L foo" or "find -H
|
---|
| 457 | foo" if foo is a symbolic link (Savannah bug #12181). Previously we
|
---|
| 458 | used to fail with the error message "Too many levels of symbolic
|
---|
| 459 | links".
|
---|
| 460 |
|
---|
| 461 | "find . -false -exec foo {} +" no longer runs an extra instance of foo
|
---|
| 462 | when find exits (Savannah bug #12230).
|
---|
| 463 |
|
---|
| 464 | If the chdir() safety check fails but we can no longer get back to
|
---|
| 465 | where we started, exit with an explanatory (fatal) error message.
|
---|
| 466 | This does not happen on GNU/Linux and FreeBSD because the safety check
|
---|
| 467 | is not needed (the security problem the safety check protects against
|
---|
| 468 | is prevented in a cleaner way on those systems).
|
---|
| 469 |
|
---|
| 470 | "make distclean" no longer deletes regex.c (which "make all" needs).
|
---|
| 471 |
|
---|
| 472 | ** Functionality Changes
|
---|
| 473 | "find -printf "%h\n" will now print "." for files in the current directory.
|
---|
| 474 | Previously it printed nothing (but there was a bug in the %h
|
---|
| 475 | implementation anyway). This fixes Savannah bug #12085.
|
---|
| 476 |
|
---|
| 477 | Should now build (again) on non-C99-compliant systems.
|
---|
| 478 |
|
---|
| 479 | ** Documentation enhancements
|
---|
| 480 | Fixed some typos and clarified wording in "Working with automounters".
|
---|
| 481 |
|
---|
| 482 | ** Internationalization and Localization
|
---|
| 483 | New Vietnamese message translation.
|
---|
| 484 | |
---|
| 485 |
|
---|
| 486 | * Major changes in release 4.2.18
|
---|
| 487 | ** Bug Fixes
|
---|
| 488 | *** "find -depth" was missing out non-leaf directories when they contain
|
---|
| 489 | non-directories. This affected findutils releases 4.2.15,
|
---|
| 490 | 4.2.16 and 4.2.17, but the bug is now fixed.
|
---|
| 491 | *** Find no longer hangs on systems which are clients of unresponsive
|
---|
| 492 | NFS servers.
|
---|
| 493 | ** Documentation improvements
|
---|
| 494 | *** Improvements and corrections to the find.1 manpage, including corrections to the descriptions of -H and -L.
|
---|
| 495 | |
---|
| 496 |
|
---|
| 497 | * Major changes in release 4.2.17
|
---|
| 498 | ** Bug Fixes
|
---|
| 499 | *** bug #11861 undefined symbol "basename" on IRIX 5.3
|
---|
| 500 | *** bug #11865 xargs -i regression (as compared to findutils-4.2.12)
|
---|
| 501 | *** bug #11866 Typo in pred_okdir renders it useless (affecting 4.2.16 only)
|
---|
| 502 | *** patch #3723 fix recent process_top_path change (for -execdir on /)
|
---|
| 503 | *** Fixing bug #11866 and applying patch #3723 made -execdir work much better.
|
---|
| 504 | *** find bar/baz/ugh now works again if baz is a symbolic link (broken
|
---|
| 505 | in 4.2.15).
|
---|
| 506 | |
---|
| 507 |
|
---|
| 508 | * Major changes in release 4.2.16
|
---|
| 509 | ** Functionality Changes
|
---|
| 510 | *** Updated the message catalogues for the translated messages.
|
---|
| 511 | *** The subfs filesystem is now treated the same as the autofs
|
---|
| 512 | filesystem is.
|
---|
| 513 | *** New translations: Belarusian, Catalan, Greek, Esperanto,
|
---|
| 514 | Finnish, Irish, Croatian, Hungarian, Japanese, Luganda,
|
---|
| 515 | Malay, Romanian, Slovenian, Serbian, Chinese (simplified).
|
---|
| 516 |
|
---|
| 517 | ** Bug Fixes
|
---|
| 518 | *** The -execdir action now works correctly for files named on the
|
---|
| 519 | command line.
|
---|
| 520 | |
---|
| 521 |
|
---|
| 522 | * Major changes in release 4.2.15
|
---|
| 523 | ** Functionality Changes
|
---|
| 524 | *** locate now supports matching regular expression (--regex).
|
---|
| 525 | *** --enable-d_type-optimization (introduced in findutils 4.2.13) is now turned on by default.
|
---|
| 526 | |
---|
| 527 |
|
---|
| 528 | * Major changes in release 4.2.14
|
---|
| 529 | ** Functionality Changes
|
---|
| 530 | *** New options -L, -P, -H for locate. The work in the same was as the same options for find.
|
---|
| 531 | ** Bug Fixes
|
---|
| 532 | *** Don't include the "findutils/find/testsuite/find.gnu" subdirectory in the
|
---|
| 533 | distributed tar file more than once.
|
---|
| 534 | *** Should now build on Solaris once again.
|
---|
| 535 | *** -xtype and -printf %Y now work correctly for symbolic links once again
|
---|
| 536 | ** Documentation improvements
|
---|
| 537 | *** All options for "locate" are now documented
|
---|
| 538 | |
---|
| 539 |
|
---|
| 540 | * Major changes in release 4.2.13
|
---|
| 541 | ** Performance Enhancements
|
---|
| 542 | *** On Linux and some other systems, a large performance improvement,
|
---|
| 543 | because we can eliminate many of the calls to lstat() (in extreme
|
---|
| 544 | cases, 99% of them). Limited testing shows a 2x speedup on NFS
|
---|
| 545 | filesystems. Other systems which can make use of this enhancement
|
---|
| 546 | include Mac OS X and *BSD.
|
---|
| 547 | |
---|
| 548 |
|
---|
| 549 | * Major changes in release 4.2.12
|
---|
| 550 | ** Functionality Changes
|
---|
| 551 | *** find is now POSIX-compliant, as far as I know.
|
---|
| 552 | *** -exec ... {} + now works.
|
---|
| 553 | *** New actions -execdir and -okdir which are like -exec and -ok but more secure.
|
---|
| 554 | *** "locate -w" is now a synonym for "locate --wholepath".
|
---|
| 555 | *** An empty path entry in the locate database path (for example "::" in
|
---|
| 556 | $LOCATE_PATH or in the argument to "locate -d") is taken to mean
|
---|
| 557 | the default database, whose name is hard-coded in locate.
|
---|
| 558 | ** Bug Fixes
|
---|
| 559 | *** If find or xargs cannot write to stdout, for example because
|
---|
| 560 | output is redirected to a file and the disk is full, the
|
---|
| 561 | relevant program will return a non-zero exit status.
|
---|
| 562 | |
---|
| 563 |
|
---|
| 564 | * Major changes in release 4.2.11
|
---|
| 565 | ** Bug Fixes
|
---|
| 566 | *** Compilation fix for systems without EOVERFLOW.
|
---|
| 567 | *** More helpful error message if you make a mistake with (, ), -o or -a.
|
---|
| 568 | ** Functionality Changes
|
---|
| 569 | *** If you have unclosed parentheses on the find command line,
|
---|
| 570 | or any of a number of similar problems, find will now produce
|
---|
| 571 | a more helpful error message.
|
---|
| 572 | *** locate -b is now a synonym for locate --basename
|
---|
| 573 | *** locate now supports a --statistics (or -S) option, which prints some
|
---|
| 574 | statistics about the locate databases.
|
---|
| 575 | *** Implemented the -samefile option.
|
---|
| 576 | ** Documentation improvements
|
---|
| 577 | *** New chapter in the manual, "Security Considerations".
|
---|
| 578 | *** Better documentation for -prune (Mainly thanks to Stepan Kasal)
|
---|
| 579 | ** Bug Fixes
|
---|
| 580 | *** locate's options -i and -w now work with the -e option (previously a bug
|
---|
| 581 | prevented this).
|
---|
| 582 | |
---|
| 583 |
|
---|
| 584 | * Major changes in release 4.2.10
|
---|
| 585 | ** Bug Fixes
|
---|
| 586 | *** Portability fix for fstype.c: should now compile on UNICOS, and possibly
|
---|
| 587 | also produce useful results on BeOS and Dolphin, perhaps other
|
---|
| 588 | systems too.
|
---|
| 589 | |
---|
| 590 |
|
---|
| 591 | * Major changes in release 4.2.9
|
---|
| 592 | ** Functionality Changes
|
---|
| 593 | *** xargs no longer treats a line containing only an underscore as a logical end-of-file. To obtain the behaviour that was previously the default, use "-E_".
|
---|
| 594 | *** xargs now supports the POSIX options -E, -I and -L. These are synonyms
|
---|
| 595 | for the existing options -e, -i and -l, but the latter three are
|
---|
| 596 | now deprecated.
|
---|
| 597 | ** Bug Fixes
|
---|
| 598 | *** xargs -n NUM now invokes a command as soon as it has NUM arguments.
|
---|
| 599 | Previously, it waited until NUM+1 items had been read, and then
|
---|
| 600 | invoked the command with NUM arguments, saving the remaining one
|
---|
| 601 | for next time.
|
---|
| 602 | *** If "find -L" discovers a symbolic link loop, an error message is issued.
|
---|
| 603 | *** If you specify a directory on the find command line, but -prune
|
---|
| 604 | is applied to it, find will no longer chdir() into it anyway.
|
---|
| 605 | ** Documentation improvements
|
---|
| 606 | *** The precise interpretation of the arguments to the -atime, -ctime
|
---|
| 607 | and similar tests in find has been documented more clearly.
|
---|
| 608 | |
---|
| 609 |
|
---|
| 610 | * Major changes in release 4.2.8
|
---|
| 611 | *** Bugfix to the findutils 4.2.7 automount handling on Solaris. This
|
---|
| 612 | worked to some extent in findutils-4.2.7, but is much improved in
|
---|
| 613 | findutils-4.2.8.
|
---|
| 614 | |
---|
| 615 |
|
---|
| 616 | * Major changes in release 4.2.7
|
---|
| 617 | ** Functionality Changes
|
---|
| 618 | *** xargs can now read a list of arguments from a named file, allowing
|
---|
| 619 | the invoked program to use the same stdin as xargs started with
|
---|
| 620 | (for example ``xargs --arg-file=todo emacs'').
|
---|
| 621 | ** Documentation improvements
|
---|
| 622 | *** The Texinfo manual now has an extra chapter, "Error Messages". Most
|
---|
| 623 | error messages are self-explanatory, but some of the ones which
|
---|
| 624 | are not are explained in this chapter.
|
---|
| 625 | ** Bug Fixes
|
---|
| 626 | *** Avoid trying to link against -lsun on UNICOS, which doesn't need it or
|
---|
| 627 | have it.
|
---|
| 628 | *** Bugfix to the findutils 4.2.6 automount handling (which hadn't been enabled
|
---|
| 629 | on Solaris).
|
---|
| 630 | *** Reenabled internationalisation support (which had been accidentally
|
---|
| 631 | disabled in findutils-4.2.5).
|
---|
| 632 | |
---|
| 633 |
|
---|
| 634 | * Major changes in release 4.2.6
|
---|
| 635 | ** Bug Fixes
|
---|
| 636 | *** find now copes rather better when a directory appears to change just as
|
---|
| 637 | it is about to start examining it, which happens with automount.
|
---|
| 638 | This is because automount mounts filesystems as you change
|
---|
| 639 | directory into them. This should resolve Savannah bugs #3998,
|
---|
| 640 | #9043.
|
---|
| 641 | |
---|
| 642 |
|
---|
| 643 | * Major changes in release 4.2.5
|
---|
| 644 | ** Functionality Changes
|
---|
| 645 | *** The POSIX options -H and -L are supported. These control whether or not
|
---|
| 646 | find will follow symbolic links.
|
---|
| 647 | *** The BSD option -P is also now supported (though in any case
|
---|
| 648 | it is the default).
|
---|
| 649 | ** Documentation improvements
|
---|
| 650 | *** Better documentation for "xargs -i".
|
---|
| 651 | ** Bug Fixes
|
---|
| 652 | *** "make install" now respects DESTDIR when generating localstatedir.
|
---|
| 653 | (this is only relevant if you are installing to some location
|
---|
| 654 | other than the one that you indictaed when you ran "configure").
|
---|
| 655 | *** Compatible with automake versions 1.8 and 1.9.
|
---|
| 656 | *** Build problems on UNICOS now fixed, though the linker will still generate
|
---|
| 657 | warnings because we try to link with the nonexistent library
|
---|
| 658 | "-lsun". Edit $(LIBS) to work around this problem.
|
---|
| 659 | |
---|
| 660 |
|
---|
| 661 | * Major changes in release 4.2.4
|
---|
| 662 | ** Functionality Changes
|
---|
| 663 | *** If your system sort command has a working "-z" option, updatedb will
|
---|
| 664 | now correctly handle newline characters in filenames (as will
|
---|
| 665 | locate).
|
---|
| 666 | *** xargs now uses 128Kb of command line by default (less if the system
|
---|
| 667 | doesn't support that much).
|
---|
| 668 | *** If you specify a 'find' option after non-option, a warning message
|
---|
| 669 | is now issued. Options should be specified immediately after the
|
---|
| 670 | list of paths to search. These warnings are enabled if you
|
---|
| 671 | specify the -warn option, or if stdin is a tty. They are diabled
|
---|
| 672 | by the use of the -nowarn option.
|
---|
| 673 | *** Like find, the locate program now supports an option --null (short form -0)
|
---|
| 674 | which changes the result separator from newline to NULL.
|
---|
| 675 | *** Locate supports the option -c (long form --count) which suppresses normal
|
---|
| 676 | output but prints on stdout the number of results produced (like
|
---|
| 677 | grep -c).
|
---|
| 678 | *** Locate supports the option -l (long form --limit) which limits the
|
---|
| 679 | number of results. This is useful if you only want to find out if
|
---|
| 680 | there are copies of a certain file on the system, but don't want
|
---|
| 681 | to wait for the entire locate database to be searched.
|
---|
| 682 | *** Locate now has an option --basename which forces the specified pattern to
|
---|
| 683 | be matched against the basename of the entries in the locate
|
---|
| 684 | database, rather than the whole name. The default behaviour
|
---|
| 685 | (matching against the whole name of the file including all the
|
---|
| 686 | parent directory names) corresponds to the option --wholename.
|
---|
| 687 | *** updatedb has a new option, --findoptions, that can be used to
|
---|
| 688 | pass extra options through to the find command that it uses.
|
---|
| 689 | ** Bug Fixes
|
---|
| 690 | *** "find -printf '%H\n'" now works (rather than segfaulting) on
|
---|
| 691 | systems that have non-writable string constants.
|
---|
| 692 | *** Better POSIX compliance for the -s option to xargs (out of range
|
---|
| 693 | values should just result in bounding to the correct range, not an
|
---|
| 694 | error, so now we just print a warning message and adjust the
|
---|
| 695 | value).
|
---|
| 696 | *** Corrected section numbers of manual page cross-references
|
---|
| 697 | |
---|
| 698 |
|
---|
| 699 | * Major changes in release 4.2.3
|
---|
| 700 | ** Functionality Changes
|
---|
| 701 | *** Added new action -delete which deletes things that find matches.
|
---|
| 702 | *** Added new action -quit which causes find to exit immediately.
|
---|
| 703 | *** A new format directive '%D' for "find -printf" prints the device number.
|
---|
| 704 | *** The -ls predicate no longer truncates user or group names.
|
---|
| 705 | *** Added new option "-d" which is a synonym for "-depth" for compatibility
|
---|
| 706 | with Mac OS, OpenBSD and FreeBSD. This option is already
|
---|
| 707 | deprecated since the POSIX standard specifies "-depth".
|
---|
| 708 | *** Added two new format specifiers to the -printf action; these are
|
---|
| 709 | %y and %Y. They indicate the type of the file as a single letter;
|
---|
| 710 | these are the same latters as are used by the "-type" test.
|
---|
| 711 | *** If a parent directory changes during the execution of find,
|
---|
| 712 | the error message we issue identifies the nature of the change
|
---|
| 713 | (for example the previous and current inode numbers of the
|
---|
| 714 | directory we've just returned out of).
|
---|
| 715 | ** Other Changes
|
---|
| 716 | *** Non-functional code changes to silence compiler warnings.
|
---|
| 717 | |
---|
| 718 |
|
---|
| 719 | * Major changes in release 4.2.2
|
---|
| 720 | ** Documentation improvements
|
---|
| 721 | *** "find ... -exec {}+" is not yet supported.
|
---|
| 722 | ** Bug Fixes
|
---|
| 723 | *** Fixed compilation problems on Solaris, RedHat EL AS 2.1, Irix, AIX
|
---|
| 724 | *** Work around possible compiler bug on HP-UX 11.23 for ia64
|
---|
| 725 | *** The built-in internationalisation support now works again.
|
---|
| 726 | ** Other Changes
|
---|
| 727 | *** We now import the gnulib source in the way it is intended to be used,
|
---|
| 728 | which means among other things that we only have one config.h file
|
---|
| 729 | now.
|
---|
| 730 | *** Functions which findutils requires but which are not present in
|
---|
| 731 | gnulib are now defined in "libfind.a". This is in the lib
|
---|
| 732 | directory, while gnulib is in the gnulib subdirectory.
|
---|
| 733 | *** Fixed a typo in the address of the FSF in many of the file headers.
|
---|
| 734 | |
---|
| 735 |
|
---|
| 736 | * Major changes in release 4.2.1
|
---|
| 737 | ** Bug Fixes
|
---|
| 738 | *** 'find -name \*bar now matches .foobar, because the POSIX standard
|
---|
| 739 | requires it, as explained at
|
---|
| 740 | http://standards.ieee.org/reading/ieee/interp/1003-2-92_int/pasc-1003.2-126.html
|
---|
| 741 | |
---|
| 742 |
|
---|
| 743 | * Major changes in release 4.2.1
|
---|
| 744 | ** Bug Fixes
|
---|
| 745 | *** find -iname now works correctly on systems that have an fnmatch() function
|
---|
| 746 | that does not support FNM_CASEFOLD
|
---|
| 747 | *** updatedb now uses signal names for "trap" instead of numbers,
|
---|
| 748 | as per bug #9465 (see http://www.opengroup.org/onlinepubs/009695399/utilities/trap.html)
|
---|
| 749 | *** Better support for systems lacking intmax_t
|
---|
| 750 | ** Other Changes
|
---|
| 751 | **** findutils now uses a newer version of gnulib (dated 2004-10-17).
|
---|
| 752 | |
---|
| 753 |
|
---|
| 754 | * Major changes in release 4.2.0
|
---|
| 755 | ** Functionality Changes
|
---|
| 756 | *** xargs now works better when the environment variables are very extensive.
|
---|
| 757 | The xargs command used to run into difficulties if the environment
|
---|
| 758 | data contained more than 20480 bytes.
|
---|
| 759 | *** New options -wholename and -iwholename
|
---|
| 760 | As per the GNU Projecvt coding standard, These are preferred over
|
---|
| 761 | the -path and -ipath options. Using -ipath now generates a warning,
|
---|
| 762 | though -path does not (since HPUX also offers -path).
|
---|
| 763 | *** The environment variable FIND_BLOCK_SIZE is now ignored.
|
---|
| 764 | *** New option "-ignore_readdir_race"
|
---|
| 765 | silences an error messages which would otherwise occur if a file is removed
|
---|
| 766 | after find has read it from the directory using readdir(), but before
|
---|
| 767 | find stats the file. There is also an option
|
---|
| 768 | -noignore_readdir_race which has the opposite effect.
|
---|
| 769 | ** Documentation improvements
|
---|
| 770 | *** The -size option of find is now documented in more detail
|
---|
| 771 | *** POSIX compliance and GNU extensions
|
---|
| 772 | The find manual page also now includes a section
|
---|
| 773 | which describes the relationship between the features of GNU
|
---|
| 774 | find and the POSIX standard. Some other small improvements
|
---|
| 775 | to the find and xargs manual pages have been made.
|
---|
| 776 | *** The argument to the -fprintf directive is now better documented.
|
---|
| 777 | The escape code '\0' for the `-printf' predicate of find is now
|
---|
| 778 | documented, and the documentation for the %k and %b specifiers
|
---|
| 779 | has been improved.
|
---|
| 780 | *** xargs -i is now more clearly documented.
|
---|
| 781 | ** Bug Fixes
|
---|
| 782 | *** locate 'pa*d' will now find /etc/passwd (if it exists, of course)
|
---|
| 783 | *** xargs standard input is not inherited by child processes
|
---|
| 784 | If the command invoked by xargs reads from its standard input,
|
---|
| 785 | it now gets nothing, as opposed to stealing data from the
|
---|
| 786 | list of files that xargs is trying to read.
|
---|
| 787 | *** Better support for 64-bit systems.
|
---|
| 788 | *** The command "xargs -i -n1" now works as one might expect,
|
---|
| 789 | I think this is a strange thing to want to do.
|
---|
| 790 | *** Arguments to find -mtime that are too large are now diagnosed
|
---|
| 791 | Previously, this just used to cause find just to do the wrong thing.
|
---|
| 792 | *** updatedb is now somewhat more robust
|
---|
| 793 | The updatedb shell script now does not generate an empty
|
---|
| 794 | database if it fails.
|
---|
| 795 | *** Sanity-check on some data read from locatedb
|
---|
| 796 | Locate now detects some types of file corruption in the
|
---|
| 797 | locate database.
|
---|
| 798 | *** The %k format specifier for -fprintf now works
|
---|
| 799 | This was broken in 4.1.20.
|
---|
| 800 | |
---|
| 801 |
|
---|
| 802 | * Major changes in release 4.1.20:
|
---|
| 803 | ** New maintainer, James Youngman <jay@gnu.org>
|
---|
| 804 | ** As far as I know, this is the first release after 4.1.7, but I've left
|
---|
| 805 | a gap just in case.
|
---|
| 806 | ** We now use an "imported" version of gnulib, rather than including
|
---|
| 807 | a copy of the gnulib code in our CVS repository. There are no
|
---|
| 808 | differences in the build instructions, though (unless you are
|
---|
| 809 | building directly from CVS, in which case please read the file
|
---|
| 810 | README-CVS).
|
---|
| 811 | ** There are no (deliberate) functional changes in version 4.1.20.
|
---|
| 812 | |
---|
| 813 |
|
---|
| 814 | * Major changes in release 4.1.7:
|
---|
| 815 | fix problem so that default "-print" is added when "-prune" is used.
|
---|
| 816 | security fixes related to directories changing while find is executing.
|
---|
| 817 | |
---|
| 818 |
|
---|
| 819 | * Major changes in release 4.1.6:
|
---|
| 820 | correct bug in prune.
|
---|
| 821 | added --ignore-case option for locate
|
---|
| 822 |
|
---|
| 823 | * Major changes in release 4.1.5:
|
---|
| 824 | Add support for large files
|
---|
| 825 |
|
---|
| 826 | * Major changes in release 4.1.4:
|
---|
| 827 | bug fixes, more up-to-date languages.
|
---|
| 828 |
|
---|
| 829 | * Major changes in release 4.1.3:
|
---|
| 830 | added internationalization and localization.
|
---|
| 831 |
|
---|
| 832 | * Major changes in release 4.1.1:
|
---|
| 833 | attempt at successful compilation on many platforms after years of neglect
|
---|
| 834 | "--existing" option added to locate "--prunefs" option added to updatedb
|
---|
| 835 |
|
---|
| 836 | * Major changes in release 4.1:
|
---|
| 837 |
|
---|
| 838 | ** Distribution renamed to findutils.
|
---|
| 839 | ** updatedb is now a user command, installed in $exec_prefix/bin
|
---|
| 840 | instead of $exec_prefix/libexec.
|
---|
| 841 | ** A few problems in Makefiles and testsuite corrected.
|
---|
| 842 | |
---|
| 843 |
|
---|
| 844 | * Major changes in release 4.0:
|
---|
| 845 |
|
---|
| 846 | ** Documentation:
|
---|
| 847 | *** Texinfo manual.
|
---|
| 848 | *** Man page for updatedb.
|
---|
| 849 | *** Man page for the locate database formats.
|
---|
| 850 |
|
---|
| 851 | ** find:
|
---|
| 852 | *** Takes less CPU time on long paths, because it uses chdir to descend
|
---|
| 853 | trees, so it does fewer inode lookups.
|
---|
| 854 | *** Does not get trapped in symbolic link loops when -follow is given.
|
---|
| 855 | *** Supports "-fstype afs" if you have /afs and /usr/afsws/include
|
---|
| 856 | and you configure using the --with-afs option.
|
---|
| 857 | *** New action -fls FILE; like -ls but writes to FILE.
|
---|
| 858 |
|
---|
| 859 | ** locate:
|
---|
| 860 | *** Supports a new database format, which is 8-bit clean and
|
---|
| 861 | allows machines with different byte orderings and integer sizes to
|
---|
| 862 | share the databases. The new locate can also detect and read the
|
---|
| 863 | old database format automatically. The new databases are typically
|
---|
| 864 | 30% or more larger than the old ones (due to allowing all 8 bits in
|
---|
| 865 | file names). Search times are approximately the same, or faster on
|
---|
| 866 | some systems.
|
---|
| 867 | *** Warns if a file name database is more than 8 days old.
|
---|
| 868 |
|
---|
| 869 | ** updatedb:
|
---|
| 870 | *** Takes command-line options.
|
---|
| 871 |
|
---|
| 872 | ** xargs:
|
---|
| 873 | *** Performance improved 10-20%.
|
---|
| 874 | *** The EOF string is not used when -0 is given.
|
---|
| 875 | *** Now has a test suite. Some minor bugs fixed as a result.
|
---|
| 876 | |
---|
| 877 |
|
---|
| 878 | * Major changes in release 3.8:
|
---|
| 879 |
|
---|
| 880 | ** case insensitive versions of -lname, -name, -path, -regex:
|
---|
| 881 | -ilname, -iname, -ipath, -iregex
|
---|
| 882 | ** %F directive for -printf, -fprintf to print file system type
|
---|
| 883 | |
---|
| 884 |
|
---|
| 885 | * Major changes in release 3.7:
|
---|
| 886 |
|
---|
| 887 | ** locate can search multiple databases
|
---|
| 888 | ** locate has an option to specify the database path
|
---|
| 889 | ** updatedb no longer goes into an infinite loop with some versions of tail
|
---|
| 890 |
|
---|
| 891 | --//--
|
---|
| 892 | This is used by Emacs' spell checker ispell.el:
|
---|
| 893 |
|
---|
| 894 | LocalWords: ansi knr strftime xargs updatedb sh fnmatch hin strcpy
|
---|
| 895 | LocalWords: lib getstr getline frcode bigram texi depcomp automake
|
---|
| 896 | LocalWords: strncasecmp strcasecmp LIBOBJS FUNC prunefs allout libexec
|
---|
| 897 | LocalWords: testsuite Texinfo chdir inode fstype afs fls ls EOF lname
|
---|
| 898 | LocalWords: regex ilname iname ipath iregex printf fprintf
|
---|
| 899 |
|
---|