Przypadkowo skopiowałem całą zawartość katalogu do katalogu docelowego zamiast przenosić pełny katalog. Spowodowało to zaśmiecenie katalogu docelowego zamiast dodawania katalogu źródłowego do katalogu.
Aby to naprawić, wykonałem następujące czynności:
ls -rt /path/to/cluttered/destination/directory/ > /opt/dircheck/filestomove
Powyższe polecenie tworzy plik filestomove, który będzie listą całej zawartości katalogu docelowego, posortowaną odwrotnie według czasu, co oznacza najstarszą do najnowszej.
Następnie utworzyłem podkatalog już zaśmieconego katalogu docelowego, do którego można przenieść rzeczy.
mkdir /path/to/cluttered/destination/directory/newsubdirectory
Następnie powtórzyłem listę katalogów, z wyjątkiem listy do ekranu i pokazania więcej szczegółów.
ls -lrht /path/to/cluttered/destination/directory/
W tym wierszu znajduje się katalog, posortowany według daty rosnąco (sortowanie wstecz według czasu) i pokazuje więcej informacji, w tym znacznik daty / godziny każdego pliku w zaśmieconym katalogu docelowym. Odnoszę się do tego, zaczynając od góry, aby pokazać, które katalogi i pliki chcę zachować tam, gdzie były. W datach / czasach plików będzie luka, w której zaczynają się wszystkie nowe pliki, których nie powinno tam być.
Następnie zredagowałem plik filestomove utworzony w pierwszym kroku powyżej (posortowanym według daty) i usunąłem kilka z listy, które były tam wcześniej, które chcę pozostać w oryginalnym katalogu.
vim /opt/dircheck/filestomove
Usuń z góry wszystkie pliki, których nie chcesz przenosić.
Następnie użyłem polecenia wymienionego wcześniej w tym poście, aby przenieść pliki z mojej listy do nowego katalogu, który utworzyłem.
sudo xargs -a /opt/dircheck/filestomove mv -t /path/to/cluttered/destination/directory/newsubdirectory
To spowodowało przeniesienie wszystkich plików w ułamku sekundy. (Uwaga: sudo może nie być potrzebne na początku, jest to kwestia uprawnień do plików).
Teraz mój oryginalny katalog docelowy jest ładny i czysty i zawiera nowy katalog ze wszystkimi plikami i katalogami, które go zagracały.