Strona 1 z 1

Limit prędkości kopiowania

: 02 lipca 2011, 14:29
autor: adrixcx
Witam.
Mam pewien problem. Chciałbym żeby ustawić limit prędkości kopiowania plików przy ich kopiowaniu. Czy polecenie cp ma możliwość ustawienia maksymalnego transferu danych? Jest mi to bardzo potrzebne.
Pozdrawiam i z góry dziękuję za pomoc.

: 02 lipca 2011, 15:03
autor: xmaster
1. Napisz to samo tylko w znanym narzeczu.
2.

Kod: Zaznacz cały

man cp

: 02 lipca 2011, 17:02
autor: adrixcx
xmaster, po co odpowiadasz nie mając wiedzy w temacie? W:

Kod: Zaznacz cały

man cp
nie ma na ten temat.

: 03 lipca 2011, 15:52
autor: fnmirk
adrixcx, a sprawdziłeś od czego jest zależne wykonanie polecenia w systemie bazującym na Uniksie? Według mojej wiedzy nie osiągniesz tego bez dobrej znajomości jakiegoś języka programowania w powiązaniu z używaną powłoką systemową.

: 04 lipca 2011, 21:19
autor: grucha
Nie wiem jaki konkretnie efekt potrzebujesz uzyskać, więc moje rozwiązanie może Cię nie usatysfakcjonować. Samego cp chyba ograniczyć się nie da. Jest natomiast fajny program cpipe (do pobrania z repozytorium) który jest rozbudowanym potokiem, który wyrzuca na stdout to co dostaje na stdin. Potrafi przy tym zmierzyć szybkość transferu, albo go ograniczyć. Interesuje nas oczywiście ta ostatnia funkcja. Tyle, że cp nie wypisuje na stdout, ale do pliku. Trzeba więc obejść to i zrobić cp z użyciem cata:

Kod: Zaznacz cały

cat file_name.ext > new_file.ext
To polecenie dosłownie kopiuje jeden plik do drugiego. Trzeba więc tylko wepchnąć w środek nasz potok:

Kod: Zaznacz cały

cat file_name.ext | cpipe -s transfer_w_kb > new_file.ext
Tym sposobem kopiujemy plik file_name do new_file z prędkością określoną jako parametr cpipe.