prosty skrypt - backup plików

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
NeVrea
Piegowaty Guziec
Piegowaty Guziec
Posty: 1
Rejestracja: 29 gru 2013, 23:02
Wersja Ubuntu: 13.04

prosty skrypt - backup plików

Post autor: NeVrea »

Witam,

Z linuxem mam doczynienia od niedawna, próbuje właśnie stworzyć swoje pierwsze skrypty, ale średnio mi to idzie.

Chcę napisać skrypt tworzący folder, którego nazwą jest obecna data ( to mi się już udało ), a następnie znaleźć wszystkie pliki textowe i skopiować je do tego folderu.

Na chwilę obecną mam:

nazwa=`date +%d.%b.%Y`
katalog=$nazwa;
mkdir - ~/backup/"$katalog"

no i teraz znalezienie i skopiowanie tych plików. Próbowałem `find ~ -type f -iname "*.txt" -exec {} $katalog \;` ale nie ma praw do plików które znalazł

próbowałem również pętlą for

pliki=`find ~ -type f -iname "*.txt"`

for plik in plik
do

cp $pliki $katalog;

done

Proszę o wyjaśnienie jak zrobić by skrypt zadziałał, najlepiej obiema metodami :)
Awatar użytkownika
ABCD
Sędziwy Jeż
Sędziwy Jeż
Posty: 87
Rejestracja: 31 lip 2011, 16:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: WindowMaker
Architektura: x86_64

Re: prosty skrypt - backup plików

Post autor: ABCD »

Kod: Zaznacz cały

find -type f -iname '*.txt' -exec cp '{}' ./katalog ';'
Na początku było słowo, sądząc po tym co jest teraz musiało być niecenzuralne.
adammaj1
Piegowaty Guziec
Piegowaty Guziec
Posty: 29
Rejestracja: 25 gru 2011, 12:37
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Środowisko graficzne: GNOME
Architektura: x86_64

Re: prosty skrypt - backup plików

Post autor: adammaj1 »

Tu masz skrypt który kopiuje pliki do lokalnego katalogu Dropboxa ( a Dropbox potem kopiuje je na chmurę ) :

Kod: Zaznacz cały


#!/bin/bash

# save as a drop.sh in your home directory
# chmod +x drop.sh
# ./drop.sh

# Thx to Kamil  Jońca and Quetza
# http://unix.stackexchange.com/questions/100660/how-to-use-rsync-to-backup-a-directory-without-git-subdirectory

echo "copy files to Dropbox folder on local disc"

echo "copy this shell script and it's old version'"
cp ~/drop.sh  ~/Dropbox/Public/bash/drop.sh
# cp ~/drop_old.sh  ~/Dropbox/Public/bash/drop_old.sh

echo "copy c and sh files "
rsync -a --exclude='.git/' --include='*.c' --include='*.sh' --include='*/' --exclude='*' ~/c/ ~/Dropbox/Public/c
# exclude .git directory = do not send it to dropbox
# rsync -a --exclude='.git/' --include='*.c' --include='*.sh' --include='*/' --exclude='*' ~/c/ ~/Dropbox/Public/c

echo "copy cpp and sh files "
rsync -a --include='*.cpp' --include='*.sh' --include='*/' --exclude='*' ~/cpp/ ~/Dropbox/Public/cpp

echo "copy Maxima CAS files ( mac extension )"
rsync -a --include='*.mac' --include='*/' --exclude='*' ~/maxima/batch/ ~/Dropbox/Public/maxima

echo "copy Haskell files ( hs extension )"
rsync -a --include='*.hs' --include='*/' --exclude='*' ~/haskell/ ~/Dropbox/Public/haskell

# echo "copy text files ( txt extension )"
# rsync -a --include='*.txt' --include='*/' --exclude='*' ~/system/ ~/Dropbox/Public/system

# echo "copy contacts "
# rsync -a --include='*.vcf' --include='*/' --exclude='*' /media/data/doc/dane/nokiae66/Contacts ~/Dropbox/private/adam/
# http://unix.stackexchange.com/questions/2161/rsync-filter-copying-one-pattern-only

echo "files will be copied to Dropbox folder on the server "
 
HTH
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość