W przypadku normalnego kopiowania plików w * nix, widziałem tylko ludzi używających cp (np. cp /mnt/mydevice/myfile ~/myfile
), Ale ostatecznie natknąłem się na to dd
, co robi dokładnie to samo ( dd if=/mnt/mydevice/myfile of=~/myfile
). Widzę, że mają one różne dostępne parametry (dd wydaje się lepsze przy precyzyjnym dostrajaniu), ale wydają się zbędne. Czy te narzędzia naprawdę robią to samo?
21
dd
./dev/sda
) zcp
.Odpowiedzi:
Aby odpowiedzieć na twoje główne pytanie, nie, oni nie robią tego samego.
Źródło
źródło
cp
można zrobić,dd
czego nie można.dd
jest również w stanie „powielić zawartość pliku do nowego pliku lub do nowej lokalizacji” oraz „zachować własność, znacznik czasu i tryb”, prawda?cp
jest bardziej ukierunkowanym narzędziem, podczas gdydd
jest bardziej ogólne.dd
może zrobić wszystko, cocp
można, alecp
tylko niektóre zdd
nich.Robią to samo, JEŚLI nie określisz jednej z opcji, do
dd
których limity są kopiowane, np.seek
Lubskip
lubcount
lub jeśli użyjeszdd
opcji do mutacji bajtów, npconv
. Jeśli nie korzystasz z jednej z tych opcji dodd
i po prostu przy użyciu powszechnie postrzegane opcje jakif
,of
,bs
po czym oba narzędzia zrobić to samo: otworzyć oba pliki, czytać z wejścia, napisz do wyjścia, aż albo wejście jest wyczerpany lub wyjście nie może zaakceptować więcej bajtów.Istnieje wiele przesądów dotyczących odczytywania i zapisywania plików „urządzeń”, które mówią, że musisz ich używać
dd
, ale to po prostu przesąd.dd
nie robi nic innego, po prostu otwieramy pliki oraz odczytujemy i zapisujemy bajty.źródło