Wyodrębnij plik zip do własnego katalogu

3

Próbuję wyodrębnić zawartość pliku zip, ale chcę ją wyodrębnić do własnego katalogu.
Próbowałem -dod rozpakowania, ale to po prostu umieszcza zawartość zip w tym katalogu.

Ale chcę wyodrębnić zawartość pierwszego (głównego) katalogu w zipie, jeśli jest tylko jeden katalog w katalogu głównym zip, w przeciwnym razie po prostu wyodrębnij pliki / foldery w katalogu głównym pliku zip (jeśli jest więcej niż jeden akta).

np. test.zipzawiera następującą strukturę katalogu:

test.zip
  \
 /app_v1/ <-The contents of this directory I want extracted to a dir of my choice
      \
     - folder-1
     - folder-2
     - folder-3
     - folder-4
     - file1
     - file2
Mennica
źródło

Odpowiedzi:

1

Prawdopodobnie chcesz, aby połączyć -jsię z -d. -jpozwala ci śmieci, które tam są. Pamiętaj, że jeśli są inne foldery, których nie chcesz, zostaną również zbite.

unzip -jd <some_path> test.zip
Glen Solsberry
źródło
1
to spłaszcza strukturę katalogów, wszystko będzie w katalogu głównym
Édouard Lopez
1

lub możesz użyć najbardziej elastycznego

unzip -p zipfile.zip some/path/file.txt > otherfilename.txt

W ten sposób możesz nawet od razu zrobić z nim, co chcesz, bez konieczności zapisywania, jeśli jest to tylko plik tymczasowy, np.

unzip -p zipfile.zip some/path/file.iso | md5sum
sehe
źródło