home *** CD-ROM | disk | FTP | other *** search
- This is the GNU file manipulation utilities package. Most of these
- programs have significant advantages over their Unix counterparts,
- such as greater speed, additional options, and fewer arbitrary limits.
-
- Summary of changes by release:
-
- 1.1. Some bug fixes, enhancements, and changes for POSIX conformance,
- including adding two programs invented by the POSIX committee (create
- and mkfifo).
-
- 1.2. An important bug fix for cp on systems that do not have the
- ftruncate system call.
-
- 1.3. Added tac and install programs, more bug fixes and POSIX and
- ANSI C changes, support for 16 bit machines, and backup file creation
- options.
-
- 1.4. Added simple roff -man documentation, cut, paste, and touch
- programs, changes to accomodate a new draft of POSIX.2 including
- removal of the create program, more bug fixes, and some new options.
-
- The fileutils are intended to be POSIX compliant (with BSD and other
- extensions), like the rest of the GNU system. They are not all quite
- there yet; however, the POSIX shell and utilities standard (1003.2)
- has not been finalized, either. They presently don't support
- internationalization features, since none of the C libraries that I
- have access to do. (The GNU C library will, but isn't finished.)
-
- The comprehensive Texinfo documentation for these programs is not
- finished yet, and needs to be rewritten. In the interim, the skeletal
- man pages provided with this distribution will have to serve.
-
- The ls, dir, and vdir commands are all separate executables instead of
- one program that checks argv[0] because people often rename these
- programs to things like gls, gnuls, l, etc., and renaming a program
- file shouldn't affect how it operates, so that people can get the
- behavior they want with whatever name they want.
-
- The GNU ls with the -s option, and at the top of long listings of
- directories, reports file sizes in units of 512 bytes by default, as
- required by POSIX. The GNU du does the same thing, also for POSIX.
- The GNU ls and du both have a -k option to make them report sizes in
- kilobytes instead.
-
- The GNU tail command has no -r option (print in reverse). Reversing a
- file is really a different job from printing the end of a file; the
- BSD tail can get away with kludging it in because of its limited size
- buffer. A more versatile way than tail -r to reverse files is the
- `tac' command included in this package.
-
- The GNU rm, like every other program that uses getopt, lets you use the
- "--" option to indicate that all following arguments are non-options.
- To remove a file called "-f" in the current directory, you could either
- rm -- -f
- or
- rm ./-f
- The Unix rm's use of "-" for this purpose predates the development of
- the getopt standard syntax.
-
- The GNU cp, mv, and ln commands can make backups of files that they
- are about to overwrite or remove. They make backups only when the -b
- (+backup) option is given.
-
- The type of backups made can be set with the VERSION_CONTROL
- environment variable, which can be overridden by the -V
- (+version-control) option. If VERSION_CONTROL is not set and -V
- (+version-control) is not given, the default backup type is
- `existing'.
-
- The value of VERSION_CONTROL and the argument to -V (+version-control)
- is like GNU Emacs' `version-control' variable; it also accepts
- synonyms that are more descriptive. The valid values are (unique
- abbreviations are accepted):
-
- t or numbered Always make numbered backups.
- nil or existing Make numbered backups of files that already
- have them, simple backups of the others.
- never or simple Always make simple backups.
-
- The suffix used for making simple backup files can be set with the
- SIMPLE_BACKUP_SUFFIX environment variable, which can be overridden by
- the -S (+suffix) option. If neither of those is given, the default is
- `~', as it is in Emacs.
-
- Backup file names will end up being the same as the original file
- names for files that are at the system's filename length limit; when
- that happens, the new file will silently replace the backup file that
- was just made. This happens with GNU Emacs, also. I am not aware of
- a clean, simple solution to this problem.
-
- Special thanks to Jim Meyering, Brian Matthews, and Bruce Evans for
- help with debugging and porting these programs.
-
- Suggestions and bug reports for these programs should be mailed to
- bug-gnu-utils@prep.ai.mit.edu.
-