From 2956f09c78aba19cb507f2812830bf280aa44096 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hannes=20K=C3=B6rber?= Date: Wed, 9 Aug 2017 21:53:00 +0200 Subject: [PATCH] Make the bak() function more robust --- zsh/zsh/40_functions.sh | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/zsh/zsh/40_functions.sh b/zsh/zsh/40_functions.sh index caf3b79..d680493 100644 --- a/zsh/zsh/40_functions.sh +++ b/zsh/zsh/40_functions.sh @@ -67,7 +67,20 @@ httpcode() { } bak() { - [[ -e "$1" ]] && cp -av "$1" "$1.bak" + if ! [[ "$1" ]] ; then + printf '%s\n' "usage: $0 FILE" + return 1 + fi + if ! [[ -e "$1" ]] ; then + printf '%s\n' "\"$1\" not found" + return 1 + fi + name="$1.$(date +%Y%m%d%H%M%S.bak)" + if [[ -e "${name}" ]] ; then + printf '%s\n' "Backup file \"$name\" already exists" + return 1 + fi + cp --archive --verbose --no-clobber "$1" "${name}" } fstab() {