home *** CD-ROM | disk | FTP | other *** search
- These are the GNU file management utilities. Most of these programs
- have significant advantages over their Unix counterparts, such as
- greater speed, additional options, and fewer arbitrary limits.
-
- The programs that can be built with this package are: chgrp, chown,
- chmod, cp, dd, df, du, install, ln, dir, vdir, ls, mkdir, mvdir, mkfifo,
- mknod, mv, rm, rmdir and touch. But mvdir is built only on systems
- that lack the rename system call.
-
- The programs cat, cut, expand, head, paste, split, tac, tail and
- unexpand, which used to be part of the fileutils, are now part of the
- textutils. cmp is now part of the diff distribution.
-
- See the file NEWS for a list of major changes in the current release.
-
- See the file INSTALL for compilation and installation instructions.
-
- If your system needs to link with -lPW to get alloca, but has
- rename in the C library (so HAVE_RENAME is defined), -lPW might
- give you an incorrect version of rename. On HP-UX this manifests
- itself as an undefined data symbol called "Error" when linking cp, ln,
- and mv. If this happens, use `ar x' to extract alloca.o from libPW.a
- and `ar rc' to put it in a library liballoca.a, and put that in LIBS
- instead of -lPW. This problem does not occur when using gcc, which
- has alloca built in.
-
- The fileutils are intended to be POSIX.2 compliant (with BSD and other
- extensions), like the rest of the GNU system. They are almost there,
- but a few incompatibilities remain.
-
- 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. Renaming a program
- file shouldn't affect how it operates, so that people can get the
- behavior they want with whatever name they want.
-
- On Sequents, the GNU install and chgrp utilities only work when run as
- root, because the Sequent chown system call doesn't allow non-root
- users to change files' groups, unlike on every other known Unix.
- (The Sequent /bin/chgrp is setuid root. Don't try making GNU chgrp
- setuid root unless you add security checks to it.)
-
- A warning about du for HP-UX users: GNU du (and I'm sure BSD-derived
- versions) counts the st_blocks field of the `struct stat' for each
- file. (It's best to use st_blocks where available, instead of
- st_size, because otherwise you get wildly wrong answers for sparse
- files like coredumps, and it counts indirect blocks.) Chris Torek in
- a comp.unix.wizards posting stated that in 4BSD st_blocks is always
- counted in 512 byte blocks. On HP-UX filesystems, however, st_blocks
- is counted in 1024 byte blocks. When GNU du is compiled on HP-UX, it
- assumes that st_blocks counts 1024-byte blocks, because locally
- mounted filesystems do; so to get the number of 512-byte blocks, it
- doubles the st_blocks value. (The HP-UX du seems to do the same
- thing.) This gives the correct numbers on HP-UX filesystems. But for
- 4BSD filesystems mounted on HP-UX machines, it gives twice the correct
- numbers; similarly, for HP-UX filesystems, du on 4BSD machines gives
- half the correct numbers. GNU ls with the -s option has the same
- problem. I know of no way to determine for a given filesystem or file
- what units st_blocks is measured in. The f_bsize element of `struct
- statfs' does not work, because its meaning varies between different
- versions of Unix.
-
- The GNU cp, mv, and ln commands can make backups of files that they
- are about to overwrite or remove. 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, portable solution to this
- problem.
-
- Special thanks to Jim Meyering, Brian Matthews, Bruce Evans, Karl Berry,
- Kaveh Ghazi, and Franc,ois Pinard for help with debugging and porting
- these programs.
-
- These programs all recognize the `--version' option. Although the RCS
- `ident' command no longer works, using `grep' and `strings -' or `od -s'
- on them still works, e.g., `strings - /usr/local/bin/ls | grep fileutils'.
-
- Mail suggestions and bug reports for these programs to
- bug-gnu-utils@prep.ai.mit.edu.
-