Doing tail -3 gives a syntax error if more than one file is named on the command line. Tailing multiple files without a numeric option, and tailing one file with it, both work. The --help documents that a form of the -n option is just to use the number and not the letter 'n'. % tail -1 index -tilt 0 -vthroat 0 & % tail -1 index.oob plumeave l4t15o75s.fits l4t15o75sa.fits l4t15o75sb.fits % tail -1 index index.oob tail: invalid option -- 1 Try `tail --help' for more information. % tail --help Usage: tail [OPTION]... [FILE]... Print last 10 lines of each FILE to standard output. With more than one FILE, precede each with a header giving the file name. With no FILE, or when FILE is -, read standard input. -c, --bytes=N output the last N bytes -f, --follow output appended data as the file grows -n, --lines=N output the last N lines, instead of last 10 -q, --quiet, --silent never output headers giving file names -v, --verbose always output headers giving file names --help display this help and exit --version output version information and exit If the first character of N (the number of bytes or lines) is a `+', print beginning with the Nth item from the start of each file, otherwise, print the last N items in the file. N may have a multiplier suffix: b for 512, k for 1024, m for 1048576 (1 Meg). A first OPTION of -VALUE or +VALUE is treated like -n VALUE or -n +VALUE unless VALUE has one of the [bkm] suffix multipliers, in which case it is treated like -c VALUE or -c +VALUE. Report bugs to textutils-bugs.mit.edu
This report has been verified in the test lab to be true. You can type for example: tail -3 /var/log/messages and it will work properly but if you type for example: tail -3 /var/log/messages /var/log/cron it will complain of -3 being an illegal argument. On the other hand the logn way will work properly: tail -n 3 /var/log/messages /var/log/cron This problem goes back to 4.2 Red Hat.
While the patch at the end of this fixes the problem, there is comment which makes it quite clear that only one filename should be passed to tail when obsolete arguments are used. The Single Unix Spec only cares about tail taking a single argument, so this matches. I'm not going to change this, as the behavior was intended by the author. --- tail.c.ewt Mon Mar 22 20:43:50 1999 +++ tail.c Mon Mar 22 20:44:08 1999 @@ -876,7 +876,7 @@ /* With the obsolescent form, there is one option string and at most one file argument. */ - if (argc < 2 || argc > 3) + if (argc < 2) return 0; /* If I were implementing this in Perl, the rest of this function
Commits pushed to master at https://github.com/ManageIQ/cfme https://github.com/ManageIQ/cfme/commit/931d3772076f842d66f7c9b68fcb5ec0a9e6480f Use target.class.base_model to get the correct children event that is based on the target's base model. Issue #874 https://github.com/ManageIQ/cfme/commit/8314066f0f673833532c6c3941920abb9891c8e2 Change the spec's description. Issue #874