Główna » jak » Rozpakuj lub rozpakuj wiele plików naraz w systemie Linux

    Rozpakuj lub rozpakuj wiele plików naraz w systemie Linux

    Jeśli masz katalog z dziesiątkami spakowanych lub rar'dowych plików, możesz uruchomić jedno polecenie, aby rozpakować je wszystkie w jednym kroku, dzięki mocy powłoki bash.

    Do tego zadania użyjemy struktury komend bash dla pętli. Zastąp zmienną nazwą i komendą, która wyprowadza listę lub jawną listę.

    dla w
    robić
    polecenie $;
    Gotowe

    Możesz uruchomić go w jednym wierszu z tą składnią:

    dla w, wykonaj polecenie $; done

    Więc jeśli chcesz odrejestrować listę plików, możesz użyć tego polecenia. Niekoniecznie potrzebujesz cudzysłowów, ale pomaga, gdy nazwy plików zawierają spacje lub coś w tym rodzaju.

    dla f in * .rar; wykonaj unrar e "$ f"; done

    Jeśli chcesz użyć 7zip do wyodrębnienia listy plików:

    dla f in * .001; do 7z e "$ f"; done

    Lub jeśli chcesz rozpakować listę plików:

    dla f in * .zip; rozpakuj "$ f"; gotowe

    Jeśli chcesz, możesz nawet łączyć polecenia. Na przykład, jeśli wszystkie pliki zip zawierają pliki .txt i chcesz je rozpakować, a następnie przenieść rozpakowane pliki do innego katalogu:

    dla f in * .zip; rozpakuj "$ f"; gotowe; dla f in * .txt; wykonaj mv "$ f" / myfolder /; done

    Powłoka basha jest tak niesamowicie potężna ... to nawet nie dotyka mocy, ale powinna dać ci dobre wyobrażenie o tym, co jest możliwe.