CodeGym /Kurslar /Docker SELF /Faylların arxivləşdirilməsi və sıxılması: `tar`, `gzip`, ...

Faylların arxivləşdirilməsi və sıxılması: `tar`, `gzip`, `zip` komandaları

Docker SELF
Səviyyə , Dərs
Mövcuddur

Faylların arxivləşdirilməsi və sıxılması: tar, gzip, zip komandaları

1. Arxivləşdirmə və sıxılma anlayışı

Arxivləşdirmə nədir və niyə lazımdır?

Təsəvvür elə bir şkaf dolusu kitabın var. Onları səliqəli şəkildə saxlamaq üçün bir qutuya yığıb (arxivləşdirmə), daha sıx saxlamaq üçün ip ilə bağlaya bilərsən (sıxılma). Kompüter dünyasında arxivləşdirmə — bir neçə faylı bir konteynerə (arxivə) birləşdirmə prosesidir, sıxılma isə onun ölçüsünü kiçiltməkdir.

Bəs niyə bu lazımdır? Budur, bir neçə nümunə:

  • Məlumatların saxlanması: Faylları arxivə yığıb, onları bir fayl kimi asanlıqla köçürə və ya kopyalaya bilərsiniz.
  • Məlumatların ötürülməsi: Sıxılma sayəsində məlumatlar daha az yer tutur ki, bu da şəbəkə üzərindən ötürməni sürətləndirir.
  • Backup: Arxivləşdirmə məlumatları qorumağa kömək edir və onları bərpa etməyi asanlaşdırır.

Bu arada, heç 1000 faylı email ilə göndərməyə çalışmısınız? Arxivləşdirmədən bu, əsl zülmə çevrilir!


2. tar komandası: arxivlərin yaradılması və onlarla işləmək

Tar nədir?

tar — Linux-da faylları arxivləşdirmək üçün istifadə edilən bir utilitdir. tar özü faylları sıxmır, sadəcə onları bir yerə toplayır. Əgər faylı sıxmaq istəsəniz, onu sıxma utilitləri ilə (gzip, bzip2 və s.) birlikdə istifadə edə bilərsiniz.

Ümumi sintaksis

tar [opsiyalar] <arxiv> <fayllar/qovluqlar>

Əsas opsiyalar

  • -c: yeni arxiv yaratmaq.
  • -v: əməliyyatlar barədə ətraflı məlumat (faylların əlavə edilməsi haqqında xəbərdar edir).
  • -f: arxiv adını təyin edir.
  • -x: arxivdən faylların çıxarılması.
  • -t: arxivin məzmununu göstərmək.

İstifadə nümunələri

1. Arxiv yaratmaq

tar -cvf archive.tar file1.txt file2.txt
  • archive.tar adlı arxivi iki fayldan file1.txtfile2.txt yaradır.
  • -c: yeni arxiv yaratmaq.
  • -v: faylların əlavə edilməsi prosesini terminalda göstərir.
  • -f: arxivin adının archive.tar olduğunu təyin edir.

2. Qovluğu arxivləşdirmək

tar -cvf project.tar /home/user/project
  • project.tar adlı arxiv yaradır və /home/user/project qovluğunu daxil edir.

3. Arxivin çıxarılması

tar -xvf archive.tar
  • archive.tar arxivini cari qovluqda çıxarır.

4. Arxivin məzmununu yoxlamaq

tar -tvf archive.tar
  • Arxivin içində olan fayl və qovluqların siyahısını göstərir.

3. gzip ilə sıxışdırma

gzip nə edir?

Əgər tar bir qutu kimidirsə, gzip onun ölçüsünü kiçildən vakumlu paketdir. gzip məlumatları sıxışdırma alqoritmləri istifadə edərək ölçünü azaldır, bu isə onu yer qənaəti üçün ideal alət edir.

Ümumi sintaksis

gzip [parametrlər] <fayl>

İstifadə nümunələri

1. Faylın sıxışdırılması

gzip file1.txt
  • Komandanın icrasından sonra file1.txt faylı file1.txt.gz olaraq dəyişəcək.

2. Faylın açılması

gunzip file1.txt.gz
  • Orijinal file1.txt faylını bərpa edir.

3. targzip ilə arxivləşdirmə və sıxışdırma

tar -czvf archive.tar.gz file1.txt file2.txt
  • archive.tar.gz arxivi yaratmaq üçün istifadə olunur, bu isə file1.txtfile2.txt fayllarını birləşdirib sıxışdırır.

4. Sıxılmış arxivdən faylları çıxarmaq

tar -xzvf archive.tar.gz
  • archive.tar.gz arxivinin içindəkiləri açır və çıxarır.

Sıxılmış arxivlər yaratmaq üçün zip aləti

tar ilə fərqi nədir?

tar-dan fərqli olaraq, zip dərhal sıxılmış arxiv yaradır, hansı ki, bu arxivlər defolt olaraq Windows və digər sistemlərdə istifadə edilə bilər.

Ümumi sintaksis

zip [opsiyalar] <arxiv> <fayllar/qovluqlar>

İstifadə nümunələri

1. Zip-arxiv yaratmaq

zip archive.zip file1.txt file2.txt
  • archive.zip adlı arxiv yaradır, hansı ki, file1.txtfile2.txt fayllarını daxil edir.

2. Qovluğu arxivləşdirmək

zip -r project.zip /home/user/project
  • project.zip adlı arxiv yaradır, hansı ki, bütün /home/user/project qovluğunu daxil edir.
  • -r: fayl və qovluqların rekursiv əlavə olunması.

3. Zip-arxiv açmaq

unzip archive.zip
  • archive.zip arxivinin məzmununu çıxarır.

5. tar, gzipzip arasındakı fərqlər

Alət Arxivləşdirmə Sıxılma Yanaşma Əsas tətbiq
tar Fayl paketləşdirmə Sıxılma olmadan faylları arxivə birləşdirmək
gzip Sıxılma Fayl və ya arxiv ölçüsünün kiçildilməsi
zip Hamısı bir yerdə Daşınabilən arxivlərin yaradılması

6. Praktik tapşırıq

  1. /home/user/documents qovluğunun məzmunundan backup.tar arxivi yaradın.
  2. Arxivi gzip ilə sıxıb backup.tar.gz əldə edin.
  3. Arxivi başqa bir kataloqa, məsələn, /tmp/backup olaraq açın.
  4. doc1.txtdoc2.txt fayllarından docs.zip zip-arxivi yaradın.
  5. unzip komandasından istifadə edərək docs.zip məzmununu açmağa çalışın.

7. Tipik səhvlər və xüsusiyyətlər

1. "Permission denied" xətası Əgər giriş hüququ məhdud olan faylları arxivləşdirməyə çalışsanız, xəta mesajı alacaqsınız. Komandanı administrator hüquqları ilə işə salın: sudo.

2. Opsiyalarda qarışıqlıq? tar opsiyaları bəzən çaşdırıcı ola bilər. Unutmayın ki, sıralama önəmlidir: məsələn, əvvəlcə -c və ya -x əməlini göstərmək, sonra isə digər opsiyaları əlavə etmək lazımdır.

3. Sıxılmış arxiv açılmır Əgər təsadüfən artıq sıxılmış fayla sıxma əlavə etmisinizsə (məsələn, gzip archive.tar.gz), narahat olmayın. Sadəcə onu iki dəfə açın.

4. Çox böyük arxiv zip komandasını istifadə edərkən müvəqqəti faylları və ya cache-i çıxarın ki, arxivin ölçüsünü azaldasınız: zip -r archive.zip folder -x "*.tmp".

5. Uyğunluq problemləri Əgər faylı Windows istifadəçisinə ötürməlisinizsə, zip istifadə edin, çünki o, bu əməliyyat sistemində daha yaxşı dəstəklənir.

Beləliklə, Linux-da məlumatların arxivləşdirilməsi və sıxılması üsullarını öyrəndik. Bu alətlər sizin böyük həcimli məlumatlarla işləməyinizi sadələşdirmək, onları ötürmək və məlumat itkisinə qarşı qorunmaq üçün faydalı olacaq. Növbəti mövzuya keçin — bilikləriniz yalnız artacaq! 🎉

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION