W zależności od sposobu utworzenia pliku zip, czasami wyodrębnia on wszystkie pliki bezpośrednio, a czasem wyodrębnia pliki do podkatalogu.
Jeśli to ostatnie jest prawdą, jak mogę zmusić unzip
polecenie do „zignorowania” tego katalogu pierwszego poziomu?
Przykład:
cd /tmp
wget http://omeka.org/files/omeka-1.5.1.zip
mkdir omeka
unzip omeka-1.5.1.zip -d omeka/
cd omeka/
ll
Dostaję to /tmp/omeka/omeka-1.5.1/
:
total 12
drwxr-xr-x 3 root root 4096 2012-05-08 18:44 ./
drwxrwxrwt 6 root root 4096 2012-05-08 18:44 ../
drwxr-xr-x 5 root root 4096 2012-04-20 14:54 omeka-1.5.1/
Chcę, aby pliki zostały wyodrębnione /tmp/omeka/
(jeden poziom wyżej i brak struktury wersji w strukturze katalogów)
/tmp/omeka/(files)
Wiem, że mogę użyć -j
opcji „śmieciowych ścieżek”, ale chcę zachować strukturę podkatalogów, a nie strukturę katalogów najwyższego poziomu. W jaki sposób mogę to zrobić?
/wordpress/
katalogu (bez numeru wersji) w pliku zip. To jest rzeczywiście grzywny unzip
i potem mv
, ale nie mając kontrolę nad tym i mając to zrobić w dwóch etapach zawsze zdobyć na moje nerwy trochę. Na szczęście Wordpress również .tar.gz
cd /tmp/omeka && ln -s -T . omeka-1.5.1
mv
pliki, ale chciałem sprawdzić, czy istnieje sposób, aby to zrobić od razu za pomocą polecenia unzip