คำสั่ง Linux สำหรับการแตกไฟล์ war?


คำตอบ:


145

ใช้การเปิดเครื่องรูด

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

มันจะพิมพ์ผลลัพธ์ในเทอร์มินัล

และสำหรับการแตกไฟล์ทั้งหมด

 unzip whatever.war

ใช้ขวดโหล

jar xvf test.war

บันทึก! jarคำสั่งจะดึงเนื้อหาสงครามไดเรกทอรีปัจจุบัน ไม่ใช่ไดเรกทอรีย่อย (เหมือน Tomcat)


11
ที่จริงฉันคิดว่าjarคำสั่งนั้นดีกว่าเพราะถูกออกแบบมาให้ทำอย่างนั้น
ภายนอก

4
@extraneon คุณช่วยอธิบายjarได้ไหมว่าทำไมถึงดีกว่า? ทั้งสองแยกโฟลเดอร์ดังนั้นในความคิดของคุณจึงjarดีกว่าทำไม? ฉันไม่พบว่ามันเป็นที่ต้องการสำหรับข้อโต้แย้งที่ถูกต้อง
nuoritoveri

4
@extraneon ดีมันขึ้นอยู่กับสถานการณ์เฉพาะ: ตัวอย่างเช่นในแง่ของการคลายซิปการใช้ cpu นั้นดีกว่า jar (0.624 CPU เทียบกับ 1.063 CPU ที่ใช้) การโยกย้าย cpu (0 vs 16) สถิติตัวนับประสิทธิภาพสำหรับ 'jar xvf Calendar.war': 325.095182 นาฬิกางาน (msec) # 1.063 ซีพียูที่ใช้การโยกย้าย 16 cpu # 0.049 K / วินาที 3,049 page-faults # 0.009 M / วินาทีเวลาที่ผ่านไป 0.305890466 วินาที * สถิติการนับประสิทธิภาพสำหรับ 'unzip Calendar.war': 36.900667 task-clock ( msec) # 0.624 CPU ใช้ 0 cpu-migrations # 0.000 K / วินาที 419 page-faults # 0.011 M / วินาที 0.059182220 วินาทีเวลาที่ผ่านไป
Kheshav Sewnundun

1
ในคำสั่ง unzip ถ้าเราใช้ '-c' มันจะแตกไฟล์ไปที่ stdout / screen ('' CRT '') สำหรับการแตกไฟล์ war (ทุกไฟล์) อย่าใช้แฟล็ก c.
Nithyanandhan M


9

ไฟล์ war เป็นเพียงไฟล์ zip ที่มีโครงสร้างไดเร็กทอรีเฉพาะ คุณจึงสามารถใช้เครื่องมือคลายซิปหรือเครื่องมือกระปุกเพื่อคลายซิป

แต่คุณคงไม่อยากทำอย่างนั้น หากคุณเพิ่มไฟล์ war ลงในไดเร็กทอรี webapps ของ Tomcat the Tomcat จะดูแลการแตก / ติดตั้งไฟล์ war


3
บางครั้ง Tomcat จะไม่แตกไฟล์เก็บถาวรและคุณต้องดำเนินการด้วยตนเอง มันสามารถเกิดขึ้นได้
เรดอน

ในกรณีนี้คุณอาจต้องการรีสตาร์ท tomcat หรือใช้ 'touch <filename>' เพื่อให้ Tomcat เริ่มแตกไฟล์
Kdeveloper

บางครั้ง Weblogic ก็ไม่ต้องการใช้สงคราม :)
Yasin Okumuş


0

การแตกโฟลเดอร์เฉพาะ (ไดเร็กทอรี) ภายในไฟล์ war:

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

คุณจะได้รับ./extracted/some-dir/ผล

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.