Polecenie Linux do wyodrębnienia pliku wojennego?

93

Jak wyodrębnić plik .war za pomocą wiersza poleceń systemu Linux?

ammar
źródło

Odpowiedzi:

145

Korzystanie z rozpakowania

unzip -c whatever.war META-INF/MANIFEST.MF  

Wyświetli wynik w terminalu.

Aby wyodrębnić wszystkie pliki,

 unzip whatever.war

Używanie jar

jar xvf test.war

Uwaga! jarKomenda będzie wyodrębnić zawartość wojennych do bieżącego katalogu. Nie do podkatalogu (tak jak robi to Tomcat).

Jigar Joshi
źródło
11
Właściwie uważam, że jarpolecenie jest lepsze, ponieważ zostało zaprojektowane właśnie do tego.
extraneon
4
@extraneon Czy możesz wyjaśnić, dlaczego jarjest lepsze? Obaj rozpakowują folder, więc dlaczego Twoim zdaniem jest jarlepiej? Nie uważam, że to zostało zaprojektowane dla tego ważnego argumentu.
nuoritoveri
4
@extraneon Cóż, zależy to od konkretnych sytuacji: Na przykład pod względem wykorzystania procesora unzip jest znacznie lepszy niż jar (wykorzystane CPU 0.624 vs 1.063 CPU) Migracja cpu (0 vs 16) Statystyki licznika wydajności dla 'jar xvf Calendar.war': 325.095182 zegar zadań (msec) # 1,063 Wykorzystane procesory 16 migracji procesora # 0,049 k / s 3049 błędów stronicowania # 0,009 M / s 0,305890466 sekund upływ czasu * Statystyki licznika wydajności dla 'unzip Calendar.war': 36.900667 task-clock ( msec) # 0,624 wykorzystanych procesorów 0 migracji procesora # 0,000 K / s 419 błędów stronicowania # 0,011 M / s 0,059182220 sekund, które upłynęły
Kheshav Sewnundun
1
W poleceniu unzip, jeśli użyjemy '-c', wypakuje pliki do stdout / screen ('' CRT ''). Do wypakowania pliku wojennego (wszystkich plików) nie używaj flagi c.
Nithyanandhan M
32

Lub

jar xvf myproject.war

Raghuram
źródło
9

Plik wojenny to po prostu plik zip z określoną strukturą katalogów. Możesz więc użyć narzędzia unzip lub jar do rozpakowania.

Ale prawdopodobnie nie chcesz tego robić. Jeśli dodasz plik war do katalogu webapps Tomcata, Tomcat zajmie się rozpakowaniem / zainstalowaniem pliku war.

Kdeveloper
źródło
3
Czasami Tomcat nie rozpakuje archiwum i musisz to zrobić ręcznie. To może się zdarzyć.
radony
W takim przypadku możesz ponownie uruchomić Tomcat lub użyć polecenia „touch <nazwa pliku”, aby Tomcat rozpoczął rozpakowywanie.
Kdeveloper,
Czasami Weblogic nie chce używać wojny :)
Yasin Okumuş
2

Możesz użyć unzippolecenia.

tangens
źródło
0

Wyodrębnianie określonego folderu (katalogu) w pliku war:

# unzip <war file> '<folder to extract/*>' -d <destination path> 
unzip app##123.war 'some-dir/*' -d extracted/

Otrzymujesz ./extracted/some-dir/w rezultacie.

Nux
źródło