#f5# Backup \kbd{file_or_folder {\rm to} file_or_folder\_timestamp}
bk() {
emulate -L zsh
+ local current_date=$(date -u "+%Y-%m-%dT%H:%M:%SZ")
while (( $# > 0 )); do
if islinux; then
- cp -a "$1" "$1_$(date --iso-8601=m)"
- elif isopenbsd; then
- cp -R "$1" "$1_$(date "+%FT%H:%M")"
+ cp -a "$1" "$1_$current_date"
elif isfreebsd; then
if [[ -d "$1" ]] && [[ "$1" == */ ]]; then
echo "cowardly refusing to copy $1 's content; see cp(1)" >&2; return 1
else
- cp -a "$1" "$1_$(date "+%FT%H:%M")"
+ cp -a "$1" "$1_$current_date"
fi
else;
- echo 'sorry, not yet implemented, send a patch!' >&2
+ cp -pR "$1" "$1_$current_date"
fi
shift
done