1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2026-01-16 02:01:05 +00:00
uutils-coreutils/src/tail
Robert Clancy 3a0c23561e tail: fix bug when following /dev/stdin
main panics when following /dev/stdin since /dev/stdin is not seekable.
Check to see if file is seekable and use unbounded_seek if so.

Also `tail -f` with no files should not follow stdin.
2016-08-20 11:47:02 +01:00
..
Cargo.toml Refactor and simplify build for utilities. 2015-12-07 21:56:45 -05:00
main.rs Refactor and simplify build for utilities. 2015-12-07 21:56:45 -05:00
README.md add verbose flag to tail 2016-06-18 14:44:05 -04:00
tail.rs tail: fix bug when following /dev/stdin 2016-08-20 11:47:02 +01:00

Rudimentary tail implementation.

##Missing features:

Flags with features

  • --max-unchanged-stats : with --follow=name, reopen a FILE which has not changed size after N (default 5) iterations to see if it has been unlinked or renamed (this is the usual case of rotated log files). With inotify, this option is rarely useful.
  • --pid : with -f, terminate after process ID, PID dies
  • --quiet : never output headers giving file names
  • --retry : keep trying to open a file even when it is or becomes inaccessible; useful when following by name, i.e., with --follow=name

Others

The current implementation does not handle - as an alias for stdin.

##Possible optimizations:

  • Don't read the whole file if not using -f and input is regular file. Read in chunks from the end going backwards, reading each individual chunk forward.