پاسخ به:دستورات لینوکس
چهارشنبه 8 شهریور 1391 1:53 AM
فشرده سازی در لینوکس (قسمت اول 1) -* دستور zip *-

تقریبا اطمینان دارم که همه میدونن zip چی هستش پس خیلی توضیح نمیدم
zip یک فرمت فشرده سازی هستش که با اون مبشه یک یا چند فایل و یا دایرکتوری را zip فشرده کرد که باعش کم شدن حجم میشود
فایلی که با zip فشرده بشود در اخر اسم ان کلمه zip قرار میگیرد که نشانه فرمت اون هست
اطلاعات بیشتر که zip چی هست : ZIP (file format) - Wikipedia, the free encyclopedia
بزای فشرده کردن یک فایل که اسم اون مشخص هستش دستور به شکل زیر میشود
کد:
tia@alieblice-desktop:~/com$ zip 1.zip 1.jpeg adding: 1.jpeg (deflated 0% )
1-در بالا فایل 1.jpeg رو به فرمت zip دز میاریم و با اسم 1.zip ذخیره میکنیم (( اول اسمی که میخایم فایل ذخیره بشه و بعد ادرس فایل مورد نظر ))
2- در بالا در هر دایرکتوری که باشیم فایل فشرده در همون جا ذخیره میشه . اگه دوست داشتین میتونین ادرس بدین به هش
مثلا در زیر فایل رو در /home/tia ذخیره میکنیم
کد:
zip /home/tia/1.zip /var/www/1.jpeg
هم زمان میتونین چندین تا فایل هم بدین که دستور به این شکل میشه
کد:
zip archivefile1 doc1 doc2 doc3
اگه خاستین تمام فایل های داخل دایرکتوری فشرده بشن از * استفاده کنین
کد:
zip archivefile1 *
نکته : در بالا دایرکتوری های داخل دایرکتوری ها فشرده نمیشن برای این کار از r- استفاده کنین(( This copies the current directory, including all subdirectories into the archive file)).
کد:
zip error: Nothing to do! (/home/tia/1.zip) tia@alieblice-desktop:~/com$ zip -r ggg.zip * adding: 1.jpeg (deflated 0%) adding: 1.zip (stored 0%) adding: 2.flv (deflated 3%) adding: limit-3 (deflated 76%) adding: untitled folder/ (stored 0%) adding: untitled folder/limit-3 (deflated 76%) adding: untitled folder/untitled folder/ (stored 0%)
نکته : در بالا فایل هایی که اولشون با نقطه شروع میشه ((فایل های مخفی)) فشرده نمیشوند برای این که اون ها هم فشرده شوند دستور به این شکل میشه
کد:
zip archivefile1 .* *
سطح فشرده سازی
در zip ر 9 سطح فشرده سازی دارسم (-0, -1, -2, -3, -4, -5, -6, -7, -8, -9) داریم که 9 بالا ترین و صفر اصلا فشرده نمیکنه و به طور پیش فرض روی 6 هستش
کد:
zip -r -9 /home/tia/padmins3.zip *
گذاشتن رمز
گذاشتن رمز به 2 صورت انجام میشه یک با اپشن e- و دیگری با اپشن P- ((پی بزرگ )) که فرق این 2 تا اینه که در p- باید رمز رو در دستور بنویسین ولی با e- رمزو خودش میپرسه
کد:
tia@alieblice-desktop:~/com$ zip -r -9 -P @LiebL1C3 /home/tia/padmins3.zip 1.jpeg updating: 1.jpeg (deflated 0%) tia@alieblice-desktop:~/com$ tia@alieblice-desktop:~/com$ zip -r -9 -e /home/tia/padmins3.zip 1.jpeg Enter password: Verify password: updating: 1.jpeg (deflated 0%) tia@alieblice-desktop:~/com$
اپدیت کردن فایل zip
اگه یک فایل دارین از یک دایرکتوری و به اون دایرکتوری چیزی اضافه شده و میخاین که اونا رو هم به اون فایل zip اضافه کنین از u- میتونین استفاده کنین که عمل اپدیت کردنو انجام میده ((فقط فایلایی که اضافه شدن رو به فایل zip اضافه میکنه و فایلی که کم شده باشه از فایل zip پاک نمیکنه))
کد:
tia@alieblice-desktop:~/com$ zip test.zip * adding: 1.jpeg (deflated 0%) adding: 1.zip (stored 0%) adding: 2.flv (deflated 3%) adding: ggg.zip (stored 0%) adding: limit-3 (deflated 76%) adding: untitled folder/ (stored 0%) tia@alieblice-desktop:~/com$ zip -u test.zip * adding: oo-presenting-kubuntu-fa.pdf (deflated 11%) tia@alieblice-desktop:~/com$
unzip
برای از فشرده دراوردن فایل های zip از دستور unzip استفاده کنین
مثلا برای از فشرده دراوردن فایل letter
کد:
unzip letters
در این حالت فایل ها در همون دایرکتوری که هستین از فشره در میاد
اگه هم اسم فایل وجود داشته باشه از شما سوال میپرسه که چه کاری انجام بده
کد:
ali@172.16.15.133:~$ unzip -j syslog.save.zip Archive: syslog.save.zip replace syslog.save? [y]es, [n]o, [A]ll, [N]one, [r]ename: ^Cali@172.16.15.133:~$ ali@172.16.15.133:~$ ali@95-168-161-82:~$ unzip syslog.save.zip Archive: syslog.save.zip replace syslog.save? [y]es, [n]o, [A]ll, [N]one, [r]ename: r new name: syslog-01 extracting: syslog-01 ali@172.16.15.133 :~$
برای از فشرده دراوردن تمام فایل های zip داخل دایرکتوری از این دستور استفاده کنین
کد:
unzip \*.zip
باز کردن فایل zip از حالت فشرده در محل دیگری :
برای این کار از d- استفاده کنین
کد:
PersianAdmins:~# unzip padmins.zip -d /padmins/ Archive: padmins.zip [padmins.zip] ali/ password: creating: /padmins/ali/ creating: /padmins/ali/navid/ extracting: /padmins/ali/navid/reza extracting: /padmins/file1.txt inflating: /padmins/file2.txt PersianAdmins:~#
اطمینان از سالم بودن فایل zip
روش اول
کد:
ali@172.16.15.133:~$ unzip -tq syslog.save.zip No errors detected in compressed data of syslog.save.zip
.
روش دوم
کد:
ali@172.16.15.133:~$ unzip -t test.zip Archive: test.zip testing: wtmp OK testing: syslog.save OK No errors detected in compressed data of test.zip.
از فشرده در اوردن یک فایل خاص از داخل فایل zip
کد:
ali@172.16.15.133:~$ zip test.zip wtmp syslog.save adding: wtmp (deflated 96%) adding: syslog.save (stored 0%) ali@172.16.15.133:~$ ali@172.16.15.133:~$ unzip test.zip wtmp -d /home/ali/ Archive: test.zip replace /home/ali/wtmp? [y]es, [n]o, [A]ll, [N]one, [r]ename: r new name: wtmp-2 inflating: /home/ali/wtmp-2
بدست آوردن اطلاعاتی در مورد فایل ها و دایرکتوری های موجود در فایل zip :
کد:
ali@172.16.15.133:~$ unzip -v test.zip Archive: test.zip Length Method Size Cmpr Date Time CRC-32 Name -------- ------ ------- ---- ---------- ----- -------- ---- 427392 Defl:N 16218 96% 2011-03-27 12:23 8be4c72a wtmp 1 Stored 1 0% 2011-03-26 10:44 32d70693 syslog.save -------- ------- --- ------- 427393 16219 96% 2 files
** دارالولایه **