31 sierpnia 2011

Skrypt do szybkiego tworzenia kopii edytowanego pliku

Przed każdą modyfikacją plików konfiguracyjnych dobrze zrobić kopię edytowanego pliku, właściwie to powinno wejść każdemu w nawyk, aby w razie czego odtworzyć to co zepsuliśmy. Najprościej zrobić to poleceniem:

# cp -p plik.cfg plik.bak

przełącznik -p pozwala zachować wszystkie atrybuty kopiowanego pliku, wraz z datą ostatniej modyfikacji.

Jeśli chcemy mieć również datę utworzenia kopii wówczas musimy wykonać polecenie:
cp -p plik.cfg plik_`date +%Y%m%d_%H%M`.bak

Aby nie pisać tego z palca za każdym razem, należy stworzyć sobie plik, który pozwoli nam na wykonanie takiej kopii automatycznie:
#!/bin/bash

nowanazwa=$1_`date +%Y%m%d_%H%M`.bak
mv $1 $nowanazwa
cp -p $nowanazwa $1

Skrypt zapisujemy pod nazwą backup, nadajemy mu prawa wykonywalności i kopiujemy do /usr/bin/
chmode 755 backup
cp backup /usr/bin/backup

dzięki temu po wykonaniu polecenia:

backup plik.cfg

automatycznie otrzymamy kopię pliku, który chcemy edytować, plik ten będzie miał w nazwie pliku datę wykonania kopii, a czas ostatniej modyfikacji odczytamy z atrybutów pliku.

Brak komentarzy:

Prześlij komentarz