summaryrefslogtreecommitdiff
path: root/btrfs-completion
diff options
context:
space:
mode:
authorQu Wenruo <wqu@suse.com>2018-08-13 14:02:43 +0800
committerDavid Sterba <dsterba@suse.com>2018-10-23 14:48:38 +0200
commit26300de0376cedc7426dbab1296714c690b804d0 (patch)
tree4c9b804ddb8534322fa4859d511e6cff7694f084 /btrfs-completion
parent9f45658fd2ccc9a2cbc259eb7e4d3132e2b92f83 (diff)
btrfs-progs: completion: use _filedir to replace _btrfs_devs
For developers it's pretty common to call "btrfs check" on a raw image dump other than real block device. It's also possible to end users to do some tests on loop devices. So current _btrfs_devs() is really making things worse. Use _filedir() to replace _btrfs_devs() so it can complete any filenames, no matter if it's just a file or a real block device. Signed-off-by: Qu Wenruo <wqu@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'btrfs-completion')
-rw-r--r--btrfs-completion17
1 files changed, 5 insertions, 12 deletions
diff --git a/btrfs-completion b/btrfs-completion
index ae683f4e..b7628e69 100644
--- a/btrfs-completion
+++ b/btrfs-completion
@@ -4,13 +4,6 @@
# (http://lists.alioth.debian.org/pipermail/bash-completion-devel/2013-June/004868.html)
# edited by John C F <john.ch.fr at gmail.com> on 2015-02-02
-_btrfs_devs()
-{
- local DEVS
- DEVS=''; while read dev; do DEVS+="$dev "; done < <(lsblk -pnro name)
- COMPREPLY+=( $( compgen -W "$DEVS" -- "$cur" ) )
-}
-
_btrfs_mnts()
{
local MNTS
@@ -68,14 +61,14 @@ _btrfs()
opts="$commands_scrub"
;;
check)
- _btrfs_devs
+ _filedir
return 0
;;
rescue)
opts="$commands_rescue"
;;
restore)
- _btrfs_devs
+ _filedir
return 0
;;
inspect-internal)
@@ -120,13 +113,13 @@ _btrfs()
;;
label)
_btrfs_mnts
- _btrfs_devs
+ _filedir
return 0
;;
esac
;;
device|rescue)
- _btrfs_devs
+ _filedir
return 0
;;
inspect-internal)
@@ -156,7 +149,7 @@ _btrfs()
return 0
;;
start)
- _btrfs_devs
+ _filedir
return 0
;;
esac