Strona 1 z 1

[Bash] Automatycznie pakowanie do rar i wysyłanie na serwer - skrypt

: 15 kwie 2010, 21:53
autor: Serantor
Witam,
Przepraszam, za być może banalną prośbę, jestem całkowitym laikiem jeśli chodzi o linuxa, a rozwiązanie tego problemu potrzebne na wczoraj.

Potrzebuję zrobić coś takiego:
Pakowanie każdego nowego pliku/katalogu, który pojawi się w lokalizacji /home/pliki do archiwum rar (part 200mb, brak kompresji, komentarz z pliku i nazwa archiwum 'backup *', gdzie * to kolejna liczba całkowita zaczynając od 270). Pakowanie z wykluczeniem pliku settings.txt, o ile takowy znajdzie się w pakowanym folderze.
Następnie wysłanie spakowanych już archiwów na określone konto hostingu rapidshare.com lub załadowanie pliku do programu RapidUploader.

W tej chwili robię to wszystko ręcznie, co jest dość czasochłonne, a plików ciągle przybywa.
Z góry dziękuję za pomoc, najlepiej gotowe rozwiązanie, ponieważ, tak jak pisałem, rozwiązanie tego problemu jest dla mnie bardzo pilne.


// O to też chodzi, niestety ja napisać czegoś takiego nie potrafię. Bardzo ułatwi mi to życie.
//ka_o_3991: Przenoszę do działu Programowanie

Odp: Automatycznie pakowanie do rar i wysyłanie na serwer - skrypt

: 15 kwie 2010, 22:30
autor: Admc
W sumie to można było by napisać skrypt w bashu, który by to robił, ale ja nie jestem orłem w pisaniu skryptów więc niech wypowie się ktoś bardziej doświadczony.

Odp: Automatycznie pakowanie do rar i wysyłanie na serwer - skrypt

: 16 kwie 2010, 00:11
autor: dawidgarus
może mógłbym coś takiego napisać, ale mam kilka pytań.
1. każdy plik ma być w osobnym archiwum?
2. czy po uploadowaniu archiwa mają być usuwane?
3. czy mają być wysyłane tylko nowe pliki w folderze, czy również ma być sprawdzane, czy stare pliki nie uległy zmianie, a jak tak to na nowo pakowane i wysyłane?

Odp: Automatycznie pakowanie do rar i wysyłanie na serwer - skrypt

: 16 kwie 2010, 16:40
autor: Serantor
1. Tak, każdy nowo pojawiający się plik/folder w nowym archiwum
2. Archiwa tak, pliki/foldery, które były pakowane nie
3. Tylko wysyłane nowe

EDIT:
Coś udało mi się nasrobać:

Kod: Zaznacz cały

#!/bin/bash
rar a backup * '**:' -m0 -v200m  c -zkomentarz.txt dummy vb >lista.txt -xplik.txt
* to kolejny numer (w nazwie pliku) zaczynając od 270
** nazwa pliku, który będzie pakowany

Nie mam pojęcia jak zrobić:
Zmiana tego numeru * (co archiwum to następny numer)
Nazwa pakowanego pliku - jak zrobić, żeby skrypt wstawiał w miejsce ** ścieżkę do pliku/folderu, który pojawił się jako nowy w określonym katalogu.
Jak zrobić żeby skrypt uruchamiał się po każdorazowym dodaniu nowego pliku/folderu

Będę wdzięczny za ocenę czy napisany przeze mnie skrypt prawidłowo wykona te czynności:
spakowanie pliku/folderu ** do archiwum o nazwie Backup *. Najniższy stopień kompresji, party po 200mb, komentarz z pliku komentarz.txt, lista z nazwami archiwum i pakowanych plików/folderów wypisana w pliku lista.txt. W pakowaniu pomijany jest plik plik.txt.