Witam,
Od wczoraj wieczora próbuję uporać się z prostym skryptem, który kopiowałby folder "Folder1" znajdujący się zawsze na pulpicie komputera, do podłączanego na USB pendrive'a, w wersji ostatecznej ta czynność ma się odbywać automatycznie, tzn. po zamontowaniu pamięci w USB automatycznie uruchomi się skrypt, który skopiuje folder.
Udało mi się napisać skrypt z wykorzystaniem poleceń "duplicate" i na końcu "with replacing", ale jego działanie nie jest takie, jak bym chciał.
- Pierwsze uruchomienie skryptu - folder z zawartością zostaje skopiowany na Pendrive'a
- Wrzucam jakiś nowy plik do folderu "Folder1" na pulpicie
- Drugie uruchomienie skryptu - error w stylu "taki folder już istnieje" (nie jestem pewny, czy aby nie wyrzuca błędu, że w tym folderze istnieją już takie pliki lub foldery, które chcę skopiować)
- Error powoduje usunięcie całej zawartości folderu "Folder1" na Pendriv'ie
- Trzecie uruchomienie skryptu - folder z zawartością (oczywiście razem z dodanym nowym plikiem) zostaje skopiowany na Pendrive'a.
Gdybym chciał, żeby program tak działał, po prostu dodałbym polecenie, żeby przed skopiowaniem zawartości folderu "Folder1" z pulpitu na Pendrive'a czyścił zawartość folderu "Folder1" na Pendriv'ie.
Chodzi mi jednak o to, że zajmuje to dużo czasu (tym więcej, im więcej plików jest w folderze), dlatego chciałbym, żeby skrypt po prostu porównywał zawartość folderu "Folder1" na pulpicie z folderem na Pendriv'ie i nadpisywał tylko te elementy, które są w folderze na pulpicie, a nie ma ich w folderze na Pendriv'ie.
Prosty skrypt - ma robić dokładnie to, co dzieje się, jak metodą Drag&drop kopiuję za pomocą Findera "Folder1" z pulpitu na Pendrive'a. Finder wywala info, że taki folder już istnieje, ja klikam Replace i zostają dopisane tylko te pliki, których jeszcze nie było na Pendriv'ie.
Myślę, że to obszerne wyjaśnienie problemu pozwoli w 100% zrozumieć sytuację i uniknąć pytań o szczegóły.
Z góry dzięki za pomoc.
Pozdrawiam

AppleScript - synchronizacja plików w jednym folderze na Pendrive i na komputerze
Rozpoczęty przez
Link
, 24 sty 2011 14:54
4 odpowiedzi w tym temacie
#1
Napisano 24 stycznia 2011 - 14:54
#2
Napisano 24 stycznia 2011 - 15:01
zrób sobie skrypt w bashu do tego i jego odpalaj kiedy zajdzie taka potrzeba.
o wiele prościej
#3
Napisano 24 stycznia 2011 - 15:49
Wczoraj przez chwilę próbowałem w VIM.. Ale to było już tak dawno w szkole, że prawie nic nie pamiętam.. A że godzina była już późna (chyba 4:30), nie poświęcałem ekstremalnie dużo czasu na szukanie tutoriali do VIM...
Byłbym zatem wdzięczny, gdybyś podrzucił, jeśli znasz, jakiś szybki link do skryptów w bashu, może dam radę.
Dzięki za odpowiedź.
#4
Napisano 24 stycznia 2011 - 15:51
man rsync
#5
Napisano 24 stycznia 2011 - 16:07
vim to edytor tylko.
skrypt bashowy możesz pisać w czym ci się żywnie podoba - nie musisz korzystać z vim'a przecież
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych