about summary refs log tree commit diff
path: root/Completion/Unix/Command/_cp
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Unix/Command/_cp')
-rw-r--r--Completion/Unix/Command/_cp32
1 files changed, 32 insertions, 0 deletions
diff --git a/Completion/Unix/Command/_cp b/Completion/Unix/Command/_cp
new file mode 100644
index 000000000..9838b1702
--- /dev/null
+++ b/Completion/Unix/Command/_cp
@@ -0,0 +1,32 @@
+#compdef cp
+
+_arguments -s \
+  '(-a --archive)'{-a,--archive}'[same as -dpR]' \
+  '(-b --backup)-b[backup]' \
+  '(-b --backup)--backup=:method:(none off numbered t existing nil simple never)' \
+  '--copy-contents[copy contents of special files when recursive]' \
+  '-d[same as --no-dereference --preserve=link]' \
+  '(-f --force)'{-f,--force}'[remove and retry for destinations that cannot be opened]' \
+  '(-i --interactive)'{-i,--interactive}'[prompt before overwrite]' \
+  '-H[follow command-line symbolic links]' \
+  '(-l --link)'{-l,--link}'[link files instead of copying]' \
+  '(-L --dereference)'{-L,--dereference}'[always follow symbolic links]' \
+  '-p[same as --preserve=mode,ownership,timestamps]' \
+  '--preserve=:attributes to preserve:_values -s , attribute mode ownership timestamps links all' \
+  '--no-preserve=:attributes not to preserve:_values -s , attribute mode ownership timestamps links all' \
+  '--parents[append source path to target directory]' \
+  '-P[same as --no-dereference]' \
+  '(-R -r --recursive)'{-R,-r,--recursive}'[copy directories recursively]' \
+  '--remove-destination[remove each existing destination file before attempting to open it]' \
+  '--reply=:how to handle the prompt about an existing destination file:(yes no query)' \
+  '--sparse=:when to create sparse files:(auto always never)' \
+  '--strip-trailing-slashes[remove any trailing slashes from each source argument]' \
+  '(-s --symbolic-link)'{-s,--symbolic-link}'[make symbolic links instead of copies of non-directories]' \
+  '(-S --suffix)'{-S,--suffix=}':backup suffix:' \
+  '--target-directory=:target directory:_files -/' \
+  '(-u --update)'{-u,--update}'[copy only when source is newer than destination or destination is missing]' \
+  '(-v --verbose)'{-v,--verbose}'[explain what is being done]' \
+  '(-x --one-file-system)'{-x,--one-file-system}'[stay on this file system]' \
+  '--help' \
+  '--version' \
+  '*:file or directory:_files'