summaryrefslogtreecommitdiffstats
path: root/zsh/oh-my-zsh/plugins/cp
diff options
context:
space:
mode:
Diffstat (limited to 'zsh/oh-my-zsh/plugins/cp')
-rw-r--r--zsh/oh-my-zsh/plugins/cp/README.md32
-rw-r--r--zsh/oh-my-zsh/plugins/cp/cp.plugin.zsh4
2 files changed, 36 insertions, 0 deletions
diff --git a/zsh/oh-my-zsh/plugins/cp/README.md b/zsh/oh-my-zsh/plugins/cp/README.md
new file mode 100644
index 0000000..2373424
--- /dev/null
+++ b/zsh/oh-my-zsh/plugins/cp/README.md
@@ -0,0 +1,32 @@
+# cp plugin
+
+This plugin defines a `cpv` function that uses `rsync` so that you
+get the features and security of this command.
+
+To enable, add `cp` to your `plugins` array in your zshrc file:
+
+```zsh
+plugins=(... cp)
+```
+
+## Description
+
+The enabled options for rsync are:
+
+- `-p`: preserves permissions.
+
+- `-o`: preserves owner.
+
+* `-g`: preserves group.
+
+* `-b`: make a backup of the original file instead of overwriting it, if it exists.
+
+* `-r`: recurse directories.
+
+* `-hhh`: outputs numbers in human-readable format, in units of 1024 (K, M, G, T).
+
+* `--backup-dir="/tmp/rsync-$USERNAME"`: move backup copies to "/tmp/rsync-$USERNAME".
+
+* `-e /dev/null`: only work on local files (disable remote shells).
+
+* `--progress`: display progress.
diff --git a/zsh/oh-my-zsh/plugins/cp/cp.plugin.zsh b/zsh/oh-my-zsh/plugins/cp/cp.plugin.zsh
new file mode 100644
index 0000000..a562591
--- /dev/null
+++ b/zsh/oh-my-zsh/plugins/cp/cp.plugin.zsh
@@ -0,0 +1,4 @@
+cpv() {
+ rsync -pogbr -hhh --backup-dir="/tmp/rsync-${USERNAME}" -e /dev/null --progress "$@"
+}
+compdef _files cpv