Polecenia powłoki lub skrypt do rozpakowania, dodania pliku tekstowego i zreipowania

8

Utworzyłem 200 plików zip do pracy, ale zdałem sobie sprawę, że zapomniałem dodać .txt do każdego z nich. Zamiast spędzać godziny na przerabianiu tej pracy, byłbym wdzięczny za wszelką pomoc.

Czy istnieje sposób, w jaki ktoś wie, używając bash, który rozpakuje, doda plik .txt i zreipuje wszystkie 200 plików? Nazwa pliku .txt nie zmieni tylko plików .zip.

Dziękuję Ci.

Joshua Ivy
źródło
3
Imho chodzi o domyślne narzędzie Ubuntu, a więc na temat.
pLumo,

Odpowiedzi:

14

Nie musisz nawet rozpakowywać plików, możesz zaktualizować istniejący plik:

zip -u existing.zip file.txt

z zipinstrukcji:

update (-u)
    Update existing entries if newer on the file system and add new files. 
    If the archive does not exist issue warning then create a new archive.

Jeśli chcesz dodać pełny folder, dodaj -r.


Aby zaktualizować wiele plików zip, wykonaj coś takiego:

for z in *.zip; do
    zip -u "$z" file.txt
done

Zobacz to powiązane pytanie w U&L.

pLumo
źródło