Posso obter a opção de backup de cp e mv para trabalhar com diretórios?

2
--backup[=CONTROL]
    make a backup of each existing destination file

A página man diz que funciona em arquivo. Não parece ter nenhum efeito nos diretórios. Existe alguma maneira de fazer isso funcionar com diretórios também? Eu quero que o diretório de destino, se existir, tenha o backup feito da mesma maneira que o backup de um arquivo.

    
por phunehehe 22.02.2012 / 14:58

1 resposta

0

Tenho a sensação de que não existe, por isso escrevi este script que emula a funcionalidade:

#!/bin/bash

if [ -e "$target" ]
then
    backup="$target.bak"
    if [[ -e "$backup" ]]
    then
        count=0
        while [[ -e "$backup.$count" ]]; do let "count += 1"; done
        backup="$backup.$count"
    fi
    mv "$target" "$backup"
    echo "backup file $backup created."
fi

# Normal cp or mv follows
    
por 15.10.2013 / 05:55