Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam
Potrzebuję pomocy w napisaniu skryptu ftp lub sftp który wykona następujące operacje:
- pobierze z danego katalogu wszystkie pliki
- skopiuje je do katalogu lokalnego
- usunie z danego katalogu pliki ale tylko te które skopiował bo w trakcie kopiowania z danego katalogu na serwerze mogą zostać tam dodane kolejne pliki.
Proszę o pomoc.
Offline
Tak dokładnie ale tylko te skopiowane, bo tak jak pisałem podczas kopiowania mogą zostać dograne kolejne.
Offline
Ale pokaż co sam napisałeś.
Offline
program psftp
open nazwa serwera
login
hasło
cd public_html
mget *.pdf
rm *.pdf
quit
ale nie wiem jak zrobić że gdy pobiera mi pliki a w tym czasie dojdą nowe to gdy kasuje to i te nowe się wykasują.
Ostatnio edytowany przez tjtomciob (2014-02-22 15:29:43)
Offline
Pomocy, czy gotowca?
ja to widze tak
binbasz sajt="http://eftepe.wólwółwoł.jakjakjak.beee" wget $sajt/remote-dir/* for fajl in `ls`; do ftp delete $sajt/remote-dir/$fajl done
Oczywiście są bardziej wyrafinowane metody jak zamknąć całość w poleceniu [b]ftp[/b], wykorzystać czasoznaczniki i inne.
edit:o, czemu w dewnullu?
Ostatnio edytowany przez lis6502 (2014-02-22 22:19:28)
Offline
Nie znam dokładnie ftp ani sftp dlatego jeśli ktoś może to niech napisze mi całe polecenie
Offline
[quote=lis6502]edit:o, czemu w dewnullu?[/quote]
Ktoś dubla wywalił, przeniosłem Twojego posta do aktywnego wątku.
Offline
Dzięki [b]Arn[/b] ;). @[b]Pavlo950[/b], pliki nie są lokalne więc mv odpada. Pomyśl o tym jak o scp ;)
@[b]tjtomciob[/b], śmiem podejrzewać że nie znasz w ogóle. Jeśli liczysz że ktoś za Ciebie odrobi pracę domową, to się przeliczyłeś. Tu uzyskasz pomoc, odpowiedzi na pytania, po gotowca mogę Ci podeślać numer rachunku bankowego ;)
Offline
lis6502 nie pracę domową tylko coś co bardzo by mi pomogło w pracy codziennej a dokładniej w pominięciu ok 300 kliknięć w ciągu dnia.
Offline
Praca domowa to takie uogólnienie. W pracy? Czyli kosisz szmal za coś, do czego się nie nadajesz, bo nie umiesz nawet ułatwić sobie codzienności związanej z pracą:>. Polecam [url=http://rtfm.killfile.pl/]lekturę[/url] po której albo darujesz sobie zawracanie komuś głowy swoim lenistwem, albo wrócisz tu z konkretami, jak np 'zrobiłem to i to, czytałem to i tamto, ale nie rozumiem tego i tego'.
Albo- doczekasz się tu jakiegoś znudzonego bezrobotnego który zrobi to za Ciebie w ramach nudy (somebody?).
Offline
[quote=tjtomciob]lis6502 nie pracę domową tylko coś co bardzo by mi pomogło w pracy codziennej a dokładniej w pominięciu ok 300 kliknięć w ciągu dnia.[/quote]
Napisałem przecież, że może pętla [b]for[/b] się nada.
Algorytm:
dla skopiowane-pliki w cel; zrób coś zrobione
Po angielsku:
for skopiowane-pliki in cel; do zrób coś done
Przykład:
for file in `find`; do echo > "$file" done
Pomyśl.
Offline
Ups, przepraszam najmocniej, w wyniku złożenia się kilku okoliczności naraz nie przeczytałem że cośtam już naskrobałeś wcześniej. Widziałem temat tylko z pierwszym postem i postawą 'zróbcie za mnie'. Przymij [b]tjtomciob[/b] przeprosiny, ale rtfm'a i tak polecam przeczytać :)
co do rzeczy problemu: mając takie ograniczone zasoby jak opisałeś (i podejrzewam że siedzisz na windowsowej maszynie, gdzie cmd jest dużo mniej elastyczny niż linuksowy bash) zrobiłbym to tak(weź pod uwagę ze nie posiadam/nie korzystałem z programu i piszę z czachy):
open nazwa serwera login hasło cd public_html mkdir outgoing mv *.pdf outgoing/* mget outgoing/*.pdf rm outgoing/*.pdf rmdir outgoing quit
Kod samodokumentujący się, jeśli masz przed oczami manuala do psftp
Offline
lis6502 dzięki jakoś najprostsze rozwiązania najpóźniej lub najgłębiej siedzą w głowie nie wpadłem na to że można do innego katalogu najpierw przenieść a potem pobrać dzięki.
Offline
Strony: 1
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00145 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.138.118.103' WHERE u.id=1 |
0.00117 | UPDATE punbb_online SET logged=1716111758 WHERE ident='3.138.118.103' |
0.00052 | SELECT * FROM punbb_online WHERE logged<1716111458 |
0.00077 | SELECT topic_id FROM punbb_posts WHERE id=258152 |
0.00153 | SELECT id FROM punbb_posts WHERE topic_id=25313 ORDER BY posted |
0.00087 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=25313 AND t.moved_to IS NULL |
0.00008 | SELECT search_for, replace_with FROM punbb_censoring |
0.00190 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=25313 ORDER BY p.id LIMIT 0,25 |
0.00115 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=25313 |
Total query time: 0.0096 s |