Linux

[Linux] Linux zip/unzip 으둜 μ••μΆ•ν•˜κ³  ν•΄μ œν•˜κΈ°

JulesJ 2022. 1. 4. 23:04
728x90

Linux zip/unzip 으둜 μ••μΆ•ν•˜κ³  ν•΄μ œν•˜κΈ°


zip

zip 은 μ—¬λŸ¬ νŒŒμΌμ„ λ¬Άκ³  μ••μΆ•ν•  수 μžˆλŠ” μœ ν‹Έλ¦¬ν‹°λ‘œ tar μ™€λŠ” 달리 아카이빙과 압좕을 같이 ν•  수 μžˆλ‹€.


ν•˜μœ„ 디렉터리 μ••μΆ•

ν•˜μœ„ 디렉터리λ₯Ό ν¬ν•¨ν•˜λŠ” μ••μΆ• μ˜΅μ…˜μΈ -r 을 μ‚¬μš©ν•΄μ„œ compress.zip νŒŒμΌμ— /path/dir λ‚΄μš©μ„ μ••μΆ•ν•œλ‹€.

zip -r compress.zip /path/dir

μ—¬λŸ¬ μ†ŒμŠ€ μ••μΆ•

dir1, dir2, file1 μ„Έ 개의 μ†ŒμŠ€λ₯Ό μ••μΆ•ν•œλ‹€.

zip -r compress.zip /path/dir1 /path/dir2 /path/file1

zip에 λ‚΄μš© μΆ”κ°€

이미 μ‘΄μž¬ν•˜λŠ” zip νŒŒμΌμ— μƒˆλ‘œμš΄ 파일 μΆ”κ°€ν•œλ‹€.

zip compress.zip path/file

νŠΉμ • 폴더 μ œμ™Έν•˜κΈ°

-x μ˜΅μ…˜μ„ μ‚¬μš©ν•œλ‹€.
μ•„λž˜λŠ” .git ν΄λ”λŠ” λΉΌκ³  μ••μΆ•ν•˜λŠ” μ˜ˆμ œμ΄λ‹€. (.git μ•žλ’€ (*) 주의)

zip -9 -r compress.zip /path/dir -x '*.git*'

unzip

unzip은 zip으둜 μ••μΆ•λœ νŒŒμΌμ„ ν‘ΈλŠ” λͺ…령어이닀.


μ••μΆ• 파일 λͺ©λ‘ 보기

압좕을 ν•΄μ œν•˜μ§€ μ•Šκ³  μ••μΆ• 파일 λ‚΄μ˜ λͺ©λ‘λ§Œ 좜λ ₯ν•˜λŠ” 방법이닀.

unzip -l compress.zip 

μ••μΆ• ν•΄μ œ

ν˜„μž¬ 폴더에 μ••μΆ• ν•΄μ œν•˜λŠ” 방법이닀.

unzip compress.zip 

νŠΉμ • 폴더에 ν•΄μ œ

압좕이 풀릴 λŒ€μƒμ„ μ§€μ •ν•˜λŠ” -d μ˜΅μ…˜μ„ μ‚¬μš©ν•˜λ©΄ μ›ν•˜λŠ” 폴더에 압좕을 ν•΄μ œν•  수 μžˆλ‹€.

unzip compress.zip  -d /path/to/put

μ—¬λŸ¬ 파일 μ••μΆ• ν•΄μ œ

μ—¬λŸ¬ μ••μΆ• νŒŒμΌμ„ ν•΄μ œν•  경우 bash 의 for ν•¨μˆ˜λ₯Ό μ΄μš©ν•΄μ„œ κ°„λ‹¨ν•˜κ²Œ μ²˜λ¦¬ν•  수 μžˆλ‹€.

for i in *.zip; do unzip $i -d /path/to/put;done

unzip 은 file globing 을 μ œλŒ€λ‘œ μ§€μ›ν•˜μ§€ μ•Šμ•„μ„œ λ‹€μŒκ³Ό κ°™μ΄λŠ” μ‚¬μš©ν•  μˆ˜κ°€ μ—†λ‹€.

unzip *.zip  -d /path/to/put

μ£Όμš” μ˜΅μ…˜

zip

  • -r : λ””λ ‰ν† λ¦¬κΉŒμ§€ μ••μΆ•
  • -1 : λΉ λ₯Έ μ••μΆ•(μ••μΆ•λ₯  ⬇)
  • -9 : 높은 μ••μΆ•λ₯  (속도 ⬇)
  • -e : zip νŒŒμΌμ— μ•”ν˜Έ μ„€μ •
  • -x : μ••μΆ•μ‹œ 파일 μ œμ™Έ

unzip

  • -d : μ§€μ •ν•œ 디렉토리에 μ••μΆ• ν•΄μ œ
  • -l : μ••μΆ• νŒŒμΌλ‚΄ λͺ©λ‘ 보기

References

728x90