Ir para o conteúdo

Timestamped tarball

Este pequeno script permite arquivar facilmente uma pasta numa tarbal com informação sobre a data e a hora do arquivo no nome do ficheiro. É bastante prático e pode ser usado como um sistema de controlo de versões ultra-minimalista.

#!/bin/bash
#
# Author: PedroTuga
# A quick timestamped.tar.gz archiver
# 19-09-2008
#

if [[ "$1" = "" || "$1" = "--help" ]]; then
        echo ""
        echo "Usage: arquivo.sh <directory to backup>"
        echo ""
        exit 1
fi

date "+%Y.%m.%d-%H.%m_" | xargs -I {} tar -cvvzf  {}`basename $1`.tar.gz  $1

A primeira coisa a fazer é guardar o código acima num ficheiro, por exemplo arquivo.sh.

Depois definir permissões para execução do ficheiro

chmod +x arquivo.sh

Finalmente... usar o script a gosto! Por exemplo, vamos arquivar a pasta perlscripts:

./arquivo.sh perlscripts

Aviso: Atenção! Ao passar uma pasta como argumento nunca incluir a barra no final do nome da pasta, pois isso causará um erro, já que esse caracter não é permitido no nome de um ficheiro.

Isto criará uma tarball com um nome do tipo:

2008.09.11-19.09_perlscripts.tar.gz