Użycie rm -rf LargeDirectory
do usunięcia dużego katalogu może zająć dużo czasu, w zależności od rozmiaru katalogu.
Czy można uzyskać aktualizację statusu lub w jakiś sposób monitorować postęp usuwania, aby uzyskać przybliżoną ocenę tego, gdzie w trakcie procesu znajduje się polecenie?
watch -n 5 du -s LargeDirectory
. Zobacz, jak dochodzi do zera.brew install watch
lub zobacz tutaj, aby uzyskać instrukcje.Odpowiedzi:
od
użyj opcji -v:
źródło
Widzę, że pytanie jest stare. Chcę podzielić się tym, co dla mnie działa, może pomóc komuś innemu.
Wyświetlam pasek postępu za pomocą
pv
wiersza polecenia Pipe ViewerTo jest polecenie
Jeśli potrzebujesz uprawnień roota do usunięcia katalogu lub pliku,
rm -rv
:-r
aby rekurencyjnie usuwać DIR i pliki.-v
verbose wyświetla wszystkie usuwane pliki i katalogi.pv -l -s
:-l
zliczać wiersze zamiast bajtów.-s
ustaw całkowitą liczbę linii do usunięcia.$( du -a <dir_or_file> | wc -l )
:du -a
zwraca listę wszystkich plików i katalogów z określonego katalogu.wc -l
zwraca liczbę wierszy wyprowadzonych przezdu -a
.> /dev/null
: wyślij wyjścierm -rv
do nikąd.źródło
find {dir} -printf . | wc -c
byłoby bezpieczniejsze (ale-printf
jest rozszerzeniem GNU).Możesz przeglądać postępy wszystkich aktualnie uruchomionych poleceń za pomocą Coreutils Progress Viewer (
cv
). To nie jest tak, jakby wydać jedno polecenie, ale widać postęp z nim.Jestem pewien, że ktoś może wymyślić alias do uruchomienia tego polecenia. Działa również z
cp, mv, dd, tar, gzip/gunzip, cat, etc.
. Więcej informacji na ten temat można znaleźć na stroniegitthub Xfennec / progress
źródło