diff options
Diffstat (limited to 'Completion/Unix')
-rw-r--r-- | Completion/Unix/Command/_rm | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/Completion/Unix/Command/_rm b/Completion/Unix/Command/_rm index 4d0dbdb3f..4a5c9a178 100644 --- a/Completion/Unix/Command/_rm +++ b/Completion/Unix/Command/_rm @@ -22,16 +22,24 @@ if _pick_variant gnu=gnu unix --help; then '(- *)--version[output version information and exit]' ) else - args=(${args:#*--(force|recursive)\[*}) + args=(${args:#*)--*\[*}) case $OSTYPE in - freebsd*) + dragonfly*|freebsd*|netbsd*|openbsd*) args+=( '-d[remove directories as well]' - '(-i)-I[prompt when removing many files]' - '-P[overwrite files before deleting them]' - '-v[explain what is being done]' - '-W[attempt to undelete named files]' - "-x[don't cross file systems when removing a hierarchy]" + '-P[overwrite files before deleting them]' + ) + ;; + dragonfly*|freebsd*|netbsd*) + args+=( + '-v[explain what is being done]' + '-W[attempt to undelete named files]' + "-x[don't cross file systems when removing a hierarchy]" + ) + ;; + dragonfly*|freebsd*) + args+=( + '(-i)-I[prompt when removing many files]' ) ;; esac |