[PATCH 01/33] bash-completion: add mount and umount

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Sami Kerola <kerolasa@xxxxxx>
---
 bash-completion/mount  | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++
 bash-completion/umount | 60 ++++++++++++++++++++++++++++++++++
 2 files changed, 147 insertions(+)
 create mode 100644 bash-completion/mount
 create mode 100644 bash-completion/umount

diff --git a/bash-completion/mount b/bash-completion/mount
new file mode 100644
index 0000000..2303cb7
--- /dev/null
+++ b/bash-completion/mount
@@ -0,0 +1,87 @@
+_mount_module()
+{
+	local cur prev OPTS
+	COMPREPLY=()
+	cur="${COMP_WORDS[COMP_CWORD]}"
+	prev="${COMP_WORDS[COMP_CWORD-1]}"
+	case $prev in
+		'-t'|'--types')
+			local TYPES
+			TYPES="
+adfs	  noadfs	hfsplus	  nohfsplus	smbfs	  nosmbfs
+affs	  noaffs	hpfs	  nohpfs	squashfs  nosquashfs
+autofs	  noautofs	iso9660	  noiso9660	sysv	  nosysv
+cifs	  nocifs	jfs	  nojfs		tmpfs	  notmpfs
+coda	  nocoda	minix	  nominix	ubifs	  noubifs
+coherent  nocoherent	msdos	  nomsdos	udf	  noudf
+cramfs	  nocramfs	ncpfs	  noncpfs	ufs	  noufs
+debugfs	  nodebugfs	nfs	  nonfs		umsdos	  noumsdos
+devpts	  nodevpts	nfs4	  nonfs4	usbfs	  nousbfs
+efs	  noefs		ntfs	  nontfs	vfat	  novfat
+ext	  noext		proc	  noproc	xenix	  noxenix
+ext2	  noext2	qnx4	  noqnx4	xfs	  noxfs
+ext3	  noext3	ramfs	  noramfs	xiafs	  noxiafs
+ext4	  noext4	reiserfs  noreiserfs
+hfs	  nohfs		romfs	  noromfs
+"
+			COMPREPLY=( $(compgen -W "$TYPES" -- $cur) )
+			return 0
+			;;
+		'-L'|'--label')
+			local LABELS
+			LABELS="$(lsblk -o LABEL -nr)"
+			COMPREPLY=( $(compgen -W "$LABELS" -- $cur) )
+			return 0
+			;;
+		'-U'|'--uuid')
+			local UUIDS
+			UUIDS="$(lsblk -o UUID -nr)"
+			COMPREPLY=( $(compgen -W "$UUIDS" -- $cur) )
+			return 0
+			;;
+		'-h'|'--help'|'-V'|'--version')
+			return 0
+			;;
+	esac
+	case $cur in
+		-*)
+			OPTS="	--all
+				--no-canonicalize
+				--fake
+				--fork
+				--fstab
+				--help
+				--internal-only
+				--show-labels
+				--no-mtab
+				--options
+				--test-opts
+				--read-only
+				--types
+				--source
+				--target
+				--verbose
+				--version
+				--read-write
+				--label
+				--uuid
+				--bind
+				--move
+				--rbind
+				--make-shared
+				--make-slave
+				--make-private
+				--make-unbindable
+				--make-rshared
+				--make-rslave
+				--make-rprivate
+				--make-runbindable"
+			COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
+			return 0
+			;;
+	esac
+	compopt -o filenames
+	COMPREPLY=( $(compgen -f -- $cur) )
+	return 0
+}
+complete -F _mount_module mount
diff --git a/bash-completion/umount b/bash-completion/umount
new file mode 100644
index 0000000..f178bd7
--- /dev/null
+++ b/bash-completion/umount
@@ -0,0 +1,60 @@
+_umount_module()
+{
+	local cur prev OPTS
+	COMPREPLY=()
+	cur="${COMP_WORDS[COMP_CWORD]}"
+	prev="${COMP_WORDS[COMP_CWORD-1]}"
+	case $prev in
+		'-t'|'--types')
+			local TYPES
+			TYPES="
+adfs	  noadfs	hfsplus	  nohfsplus	smbfs	  nosmbfs
+affs	  noaffs	hpfs	  nohpfs	squashfs  nosquashfs
+autofs	  noautofs	iso9660	  noiso9660	sysv	  nosysv
+cifs	  nocifs	jfs	  nojfs		tmpfs	  notmpfs
+coda	  nocoda	minix	  nominix	ubifs	  noubifs
+coherent  nocoherent	msdos	  nomsdos	udf	  noudf
+cramfs	  nocramfs	ncpfs	  noncpfs	ufs	  noufs
+debugfs	  nodebugfs	nfs	  nonfs		umsdos	  noumsdos
+devpts	  nodevpts	nfs4	  nonfs4	usbfs	  nousbfs
+efs	  noefs		ntfs	  nontfs	vfat	  novfat
+ext	  noext		proc	  noproc	xenix	  noxenix
+ext2	  noext2	qnx4	  noqnx4	xfs	  noxfs
+ext3	  noext3	ramfs	  noramfs	xiafs	  noxiafs
+ext4	  noext4	reiserfs  noreiserfs
+"
+			COMPREPLY=( $(compgen -W "$TYPES" -- $cur) )
+			return 0
+			;;
+		'-h'|'--help'|'-V'|'--version')
+			return 0
+			;;
+	esac
+	case $cur in
+		-*)
+			OPTS="	--all
+				--all-targets
+				--no-canonicalize
+				--detach-loop
+				--fake
+				--force
+				--internal-only
+				--no-mtab
+				--lazy
+				--test-opts
+				--recursive
+				--read-only
+				--types
+				--verbose
+				--help
+				--version"
+			COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
+			return 0
+			;;
+	esac
+	local DEVS_MPOINTS
+	DEVS_MPOINTS="$(mount | awk '{print $1, $3}')"
+	COMPREPLY=( $(compgen -W "$DEVS_MPOINTS" -- $cur) )
+	return 0
+}
+complete -F _umount_module umount
-- 
1.8.2.1

--
To unsubscribe from this list: send the line "unsubscribe util-linux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux