aboutsummaryrefslogtreecommitdiffstats
path: root/bash-completion
diff options
context:
space:
mode:
authorMasatake YAMATO <yamato@redhat.com>2023-12-07 00:17:26 +0900
committerKarel Zak <kzak@redhat.com>2023-12-14 09:47:00 +0100
commitcd094a05880cf1132762c5f9724c0945557c7638 (patch)
tree344de10aad55f02df471a654d010cb9d6356f054 /bash-completion
parent2f252cc8b19d96085c691ba75ed0ca3f2ae3aa7d (diff)
downloadutil-linux-cd094a05880cf1132762c5f9724c0945557c7638.tar.gz
exch: new command exchaging two files atomically
An example session: $ echo A > a $ echo B > b $ ./exch a b $ cat a B $ cat b A Signed-off-by: Masatake YAMATO <yamato@redhat.com>
Diffstat (limited to 'bash-completion')
-rw-r--r--bash-completion/Makemodule.am3
-rw-r--r--bash-completion/exch26
2 files changed, 29 insertions, 0 deletions
diff --git a/bash-completion/Makemodule.am b/bash-completion/Makemodule.am
index c836d30b81..b4a6db1962 100644
--- a/bash-completion/Makemodule.am
+++ b/bash-completion/Makemodule.am
@@ -18,6 +18,9 @@ endif
if BUILD_COLUMN
dist_bashcompletion_DATA += bash-completion/column
endif
+if BUILD_EXCH
+dist_bashcompletion_DATA += bash-completion/exch
+endif
if BUILD_FINCORE
dist_bashcompletion_DATA += bash-completion/fincore
endif
diff --git a/bash-completion/exch b/bash-completion/exch
new file mode 100644
index 0000000000..a3fc994771
--- /dev/null
+++ b/bash-completion/exch
@@ -0,0 +1,26 @@
+_exch_module()
+{
+ local cur prev OPTS
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+ case $prev in
+ '-h'|'--help'|'-V'|'--version')
+ return 0
+ ;;
+ esac
+ case $cur in
+ -*)
+ OPTS='
+ --help
+ --version'
+ COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
+ return 0
+ ;;
+ esac
+ local IFS=$'\n'
+ compopt -o filenames
+ COMPREPLY=( $(compgen -f -- $cur) )
+ return 0
+}
+complete -F _exch_module exch