Sytuacja: Jeśli wprowadziłem polecenie kopiowania w taki sposób cp -rf /src/ /dsc/
, czekam kilka minut na skopiowanie dużych katalogów. Zapomniałem wstawić -v
flagi, aby wypisać dane wyjściowe. Czy mogę to zrobić podczas kopiowania?
Sytuacja: Jeśli wprowadziłem polecenie kopiowania w taki sposób cp -rf /src/ /dsc/
, czekam kilka minut na skopiowanie dużych katalogów. Zapomniałem wstawić -v
flagi, aby wypisać dane wyjściowe. Czy mogę to zrobić podczas kopiowania?
Odpowiedzi:
Nie, nie możesz, ale możesz użyć polecenia watch, aby spojrzeć na katalog docelowy i zobaczyć, jak przebiega proces, np.
watch ls -l /dsc/
To pytanie wydaje się stare, ale dla cp
polecenia masz --verbose
opcję.
Więc polecenie działa w następujący sposób:
cp --verbose -rf /src/ /dsc/
cp: illegal option -- -
cp -rv
działa
cp -v -r
wskaże, że chcesz wyświetlić kopiowane pliki (zgodnie z określeniem przez -v
) i -r
zasygnalizuje, że chcesz rekurencyjnie kopiować pliki, które będą potrzebne, jeśli kopiujesz podkatalogi.
Zawsze rsync
możesz użyć zamiast tego, co najmniej zobaczysz kopiowane pliki
rsync -rva /src/ /dst/
Oczywiście działa to tylko przed rozpoczęciem kopiowania jako alternatywa dla cp
. Dobrą wiadomością jest to, że rsync skopiuje tylko te pliki, których potrzebuje, abyś mógł zabić swoje długo działające cp
polecenie, uruchom rsync
polecenie i przejdzie tam, gdzie cp
zostało przerwane.
Polecam używać Midnight Commander w przypadku, gdy chcesz zobaczyć postęp kopiowania plików.
Zainstaluj dowódcę północy:
apt-get install mc
Otwórz to:
mc
Na pierwszym panelu open source, na drugim - cel. Rozpocznij kopiowanie za pomocą „F5”.
MC wyświetli miłe i pouczające okno dialogowe postępu.
watch "find . | wc -l"
. Znalazłem to lepiej, ponieważ twoje polecenie pokazuje tylko jedną głębokość poziomu.