summaryrefslogtreecommitdiffstats
path: root/completions/dd
diff options
context:
space:
mode:
Diffstat (limited to 'completions/dd')
-rw-r--r--completions/dd42
1 files changed, 42 insertions, 0 deletions
diff --git a/completions/dd b/completions/dd
new file mode 100644
index 0000000..04d876a
--- /dev/null
+++ b/completions/dd
@@ -0,0 +1,42 @@
+# bash completion for dd -*- shell-script -*-
+
+_dd()
+{
+ local cur prev words cword
+ _init_completion -n = || return
+
+ case $cur in
+ if=* | of=*)
+ cur=${cur#*=}
+ _filedir
+ return
+ ;;
+ conv=*)
+ cur=${cur#*=}
+ COMPREPLY=($(compgen -W 'ascii ebcdic ibm block unblock lcase
+ ucase sparse swab sync excl nocreat notrunc noerror fdatasync
+ fsync' -- "$cur"))
+ return
+ ;;
+ iflag=* | oflag=*)
+ cur=${cur#*=}
+ COMPREPLY=($(compgen -W 'append direct directory dsync sync
+ fullblock nonblock noatime nocache noctty nofollow count_bytes
+ skip_bytes seek_bytes' -- "$cur"))
+ return
+ ;;
+ status=*)
+ cur=${cur#*=}
+ COMPREPLY=($(compgen -W 'none noxfer progress' -- "$cur"))
+ return
+ ;;
+ esac
+
+ COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")
+ $(compgen -W 'bs cbs conv count ibs if iflag obs of oflag
+ seek skip status' -S '=' -- "$cur"))
+ [[ ${COMPREPLY-} == *= ]] && compopt -o nospace
+} &&
+ complete -F _dd dd
+
+# ex: filetype=sh