|
[+] tworzenie archiwum w określonej lokalizacji - tar, find
snuff - 16-12-2009 13:49
Witam. Niezbyt wiem jak za to się zabrać ale zmontowałem coś takiego:
#!/bin/sh tar cvf test_$(date +%F).tar $(find -name 'screenlog.0')
Znajduje i pakuje mi archiwum z datą ale...
Pakuje wszystko do 1 pliku i do głównego katalogu, w którym znajduję się plik z wyżej wymienioną komendą. A chciał bym żeby znalazło plik o nazwie ,,screenlog.0'' i stworzyło archiwum w folderze, w którym go znalazło i przeszło do następnego znalezionego pliku o nazwie ,,screenlog.0'' i zapisało go w folderze, w którym go znalazł i tak w kółko.
beel - 16-12-2009 14:26
Jeśli znajdziesz lokalizację pliku, możesz zapisać ją do zmiennej, przykładowo: CO=/home/user/inne/poszukiwany.O
W innej zapisać ścieżkę o poziom mniej (utnij w łańcuchu od końca wszystko do pierwszego wystąpienia znaku /): GDZIE=/home/user/inne/
I w komendzie to wykorzystać jako gdzie pakuj i co pakuj: tar cvf GDZIE/test_$(date +%F).tar CO
To tylko pseudokod dla pojedynczego przypadku. Może coś pomoże.
snuff - 16-12-2009 14:30
Tylko jest jeden problem. Nie bez powodu użyłem opcji find gdyż ścieżki do katalogów są takie:
Przykład: /home/1001/screenlog.0 /home/1002/screenlog.0 /home/1003/screenlog.0 itp
i chciałbym żeby screenlog.0 było zapisane np w /home/1001/test_12_16_2009.tar
beel - 16-12-2009 14:44
Ja ci wcale nie zabroniłem używania polecenie find, Wynik jak zwróci możesz zapisać do zmiennej. Również napisałem, że to co podaję jest dla jednego wystąpienia pliku. Więc pewnie wchodziłyby w grę dla większej ilości jakieś pętelki.
snuff - 16-12-2009 14:47
Tylko, że napisałeś abym użył ścieżki względnej, czyli miałbym zrobić dla każdego pliku osobny skrypt z podaną do niego lokalizacją. I nie napisałem, że ,,zabroniłeś'' mi używania find.
beel - 16-12-2009 14:53
Tylko że napisałeś żebym użył ścieżki względnej czyli miał bym zrobić dla każdego pliku osobny skrypt z podaną do niego lokalizacją.
Absolutnie.
Chodzi o to, że ułatwieniem byłoby posiadanie listy ścieżek wystąpień takiego pliku. Jak to zrealizujesz to twój wybór. Tak przy okazji, chyba macie podobny problem http://debian.linux.pl/viewtopic.php?p=113541#113541
snuff - 16-12-2009 15:01
Ale Ty mnie nie rozumiesz albo ja Ciebie.
Chodzi mi o to by "skrypt" znajdował pliki i pakował je w folderze które je znalazł a nie w folderze w którym jest wykonywany "skrypt".
winnetou - 16-12-2009 15:23
Dziękuje...
snuff - 16-12-2009 15:37
Wielkie dzięki Skrypt działa poprawnie. Dodałem jeszcze usuwanie spakowanych plików.
zanotowane.pldoc.pisz.plpdf.pisz.plminister.pev.pl
|