1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-08-04 07:43:58 +02:00

rm: output number of arguments at the interactive prompt

Include the number of arguments which rm received in the "Remove all
arguments?" prompt.  This is useful in the, presumably, common case
where the arguments were not provided by hand, but instead were the
result of various shell expansions.  A simple, if somewhat contrived,
example (assuming rm is aliased to rm -I) could be:

  rm * .o

where the prompt "Remove 120 arguments?" is more likely to make
the user catch the problem.

* src/rm.c (main): Include correctly pluralized n_files
in the output message.  Also remove the now redudant "all".
* tests/rm/interactive-always.sh: Adjust to the new prompt.
* tests/rm/interactive-once.sh: Likewise.
This commit is contained in:
Rasmus Villemoes
2013-07-18 21:53:12 +00:00
committed by Pádraig Brady
parent e6fc265b75
commit c490a6ff2b
3 changed files with 15 additions and 11 deletions
+7 -3
View File
@@ -339,9 +339,13 @@ main (int argc, char **argv)
{
fprintf (stderr,
(x.recursive
? _("%s: remove all arguments recursively? ")
: _("%s: remove all arguments? ")),
program_name);
? ngettext ("%s: remove %zu argument recursively? ",
"%s: remove %zu arguments recursively? ",
select_plural (n_files))
: ngettext ("%s: remove %zu argument? ",
"%s: remove %zu arguments? ",
select_plural (n_files))),
program_name, n_files);
if (!yesno ())
exit (EXIT_SUCCESS);
}
+2 -2
View File
@@ -72,13 +72,13 @@ no WHEN
WHEN=never
.
WHEN=once
rm: remove all arguments recursively? .
rm: remove 2 arguments recursively? .
WHEN=always
@remove_empty 'file4-1'? @remove_empty 'file4-2'? .
-f overrides --interactive
.
--interactive overrides -f
rm: remove all arguments recursively? .
rm: remove 1 argument recursively? .
EOF
compare expout out || fail=1
+6 -6
View File
@@ -88,17 +88,17 @@ one file, no recursion
three files, no recursion
.
four files, no recursion, answer no
rm: remove all arguments? .
rm: remove 4 arguments? .
four files, no recursion, answer yes
rm: remove all arguments? .
rm: remove 4 arguments? .
one file, recursion, answer no
rm: remove all arguments recursively? .
rm: remove 1 argument recursively? .
one file, recursion, answer yes
rm: remove all arguments recursively? .
rm: remove 1 argument recursively? .
multiple files, recursion, answer no
rm: remove all arguments recursively? .
rm: remove 2 arguments recursively? .
multiple files, recursion, answer yes
rm: remove all arguments recursively? .
rm: remove 2 arguments recursively? .
EOF
compare expout out || fail=1