ایجاد و ویرایش فایل های فشرده در لینوکس با استفاده از ترمینال

در مقاله قبلی نحوه استفاده از دستور tar برای ایجاد آرشیو را توضیح دادیم. در حالی که tar یک طرح فشرده سازی بسیار رایج برای لینوکس است، اما برای کاربران (Linux)Windows و Mac OS X که اکثر آرشیوهای خود را با استفاده از فرمت zip ایجاد شده اند ، تقریباً محبوب نیست .

استفاده از Zip (برای ایجاد) و Unzip (برای گسترش) آرشیو در لینوکس(Linux) آسان است. در واقع، اکثر برنامه‌های مدیریت بایگانی رابط کاربری گرافیکی(GUI) (مانند Ark ، File Roller و Xarchiver )، تقریباً به عنوان یک پیش‌فرض برای هر برنامه بایگانی خط فرمانی که روی رایانه‌تان دارید عمل می‌کنند، و Zip نیز از این قاعده مستثنی نیست. البته می توانیم از Zip از ترمینال(Terminal) نیز استفاده کنیم . در اینجا چگونه است.

همانطور که ممکن است حدس بزنید، اولین قدم باز کردن ترمینال(Terminal) است.

01ترمینال باز

سپس، " sudo apt-get install zip unzip " (بدون نقل قول) را تایپ کنید تا مطمئن شوید که zip و unzip را نصب کرده ایم.

02Install_Zip_and_Unzip کنید

توجه: اگر این دو برنامه قبلاً نصب شده باشند، مانند تصویر بالا، پیامی مبنی بر این موضوع دریافت خواهید کرد.(Note: if those two programs are already installed, you’ll receive a message stating this to be the case, as shown above.)

پس از نصب، می‌توانیم از zip برای ایجاد بایگانی‌ها (یا اصلاح آرشیوهای موجود) و از حالت فشرده خارج کنیم تا آنها را به نسخه اصلی خود گسترش دهیم. به خاطر این مقاله، ما یک پوشه جدید در دسکتاپ(Desktop) خود به نام Stuff ایجاد خواهیم کرد. در ترمینال(Terminal) ، می‌توانیم این کار را با یک دستور انجام دهیم - mkdir /home/username/Desktop/Stuff (البته، همانطور که در زیر نشان داده شده است، «نام کاربری» را با نام کاربری خود جایگزین می‌کنید، و اگر قبلاً یک پوشه Stuff دارید. روی دسکتاپ(Desktop) خود ، می خواهید نام را تغییر دهید).

03Make_Stuff_Directory

اکنون که یک پوشه Stuff داریم، از دستور 'cd' استفاده می کنیم تا پوشه Stuff را پوشه کاری فعلی خود کنیم.

cd /home/username/Desktop/Stuff

اکنون، touch doc1.txt doc2.txt doc3.txt && mkdir Files را در (touch doc1.txt doc2.txt doc3.txt && mkdir Files)ترمینال(Terminal) خود تایپ کنید ، که یک پوشه به نام Files و همچنین سه سند - doc1.txt، doc2.txt و doc3.txt - در داخل پوشه Stuff ایجاد می کند. .

04Make_Docs

یک دستور دیگر، وارد کردن «cd» به پوشه Files ( فایل‌های(Files) cd) که به تازگی ایجاد شده است ، زیرا ما اسناد دیگری را در آن می‌خواهیم.

فایل های cd(cd Files)

در نهایت برای ایجاد سه سند جدید ، تایپ کنید doc4.txt doc5.txt doc6.txt .(touch doc4.txt doc5.txt doc6.txt)

05Make_More_Docs

حال، cd ../.. را تایپ کنید تا دسکتاپ(Desktop) به دایرکتوری کاری برگردد.

06CD_Back_To_Desktop

مرحله بعدی ما قبل از ایجاد یک فایل فشرده، ایجاد چند سند «اضافی» روی دسک‌تاپ(Desktop) با نام‌هایی مشابه فایل‌هایی است که به تازگی ایجاد کرده‌ایم، بنابراین برای ایجاد آن‌ها doc2.txt doc3.txt را تایپ کنید.(touch doc2.txt doc3.txt)

07Create_Duplicate_Docs

در نهایت، هر یک از دو فایل متنی «اضافی» را باز کنید و مقداری متن به آنها اضافه کنید. نیازی نیست که چیزی معنی دار (یا طولانی) باشد، فقط به این ترتیب می توانیم ببینیم که این اسناد واقعاً با اسنادی که قبلاً در پوشه های Stuff و فایل ایجاد شده اند متفاوت هستند.

پس از انجام این کار، می توانیم شروع به ایجاد فایل های فشرده خود کنیم. ساده‌ترین راه برای استفاده از zip این است که نام آرشیو فشرده‌ای را که می‌خواهید ایجاد کنید به آن بگویید، سپس به صراحت هر فایلی را که باید وارد آن شود نام ببرید. بنابراین، با فرض اینکه دایرکتوری کاری ما دسکتاپ(Desktop) باشد، باید zip test Stuff/doc1.txt Stuff/doc2.txt Stuff/doc3.txt را تایپ کنیم تا آرشیوی به نام test.zip ایجاد کنیم (نیازی به استفاده از “.zip نیست. پسوند در دستور، همانطور که به طور خودکار اضافه خواهد شد)، که شامل doc1.txt، doc2.txt و doc3.txt در داخل پوشه Stuff است.(Stuff)

08Create_First_Archive

مقداری خروجی خواهید دید که به ما اطلاع می دهد که سه سند (doc1.txt، doc2.txt و doc3.txt) به آرشیو اضافه شده است.

09First_Archive_Output

می‌توانیم با دوبار کلیک کردن روی آرشیو، که باید روی دسک‌تاپ(Desktop) ما قرار داشته باشد، آن را آزمایش کنیم . با انجام این کار باید آن را در برنامه بایگانی استاندارد باز کنید ( Ark در KDE ، File Roller در GNOME و Xarchiver در Xfce ).

10Open_In_Archive_Program

حالا فولدر Files چطور؟ با فرض اینکه آن را بخواهیم، ​​اسناد داخل آن را نیز به آرشیو خود اضافه کنیم، می‌توانیم از همان دستور بالا استفاده کنیم، اما Stuff/Files/* را به انتهای دستور اضافه کنیم.

11Add_To_Archive

ستاره به معنای گنجاندن همه چیز در پوشه است. بنابراین اگر پوشه دیگری در داخل پوشه Files وجود داشت ، آن نیز اضافه می شد. با این حال، اگر آن پوشه دارای آیتم هایی در داخل آن بود، شامل نمی شوند. برای انجام این کار، باید -r را اضافه کنیم (که مخفف عبارت بازگشتی یا بازگشتی است).

12Add_Recursively

لازم به ذکر است که دو دستور فوق برای "افزودن" فایل ها به آرشیو فشرده طراحی نشده اند. آنها برای ایجاد یکی طراحی شده اند. با این حال، از آنجایی که آرشیو از قبل وجود دارد، دستور به سادگی هر فایل جدیدی را به آرشیو موجود اضافه می کند.  اگر(Had) می خواستیم این بایگانی را یکباره ایجاد کنیم (به جای سه مرحله ای که برای افزودن تدریجی فایل ها به آن برای اهداف آموزشی انجام داده ایم)، می توانستیم به سادگی zip -r test Stuff/* را تایپ کنیم و همان آرشیو را ایجاد کنیم.

13Create_Recursively

از دستور و خروجی متوجه خواهید شد که سه فایل داخل پوشه Stuff و همچنین سه سند داخل پوشه Files گنجانده شده است ، بنابراین همه چیز در یک دستور زیبا و ساده انجام شد.

حال، در مورد آن دو سند «اضافی» که روی دسکتاپ(Desktop) خود ایجاد کردیم، چه می‌گوییم ؟  خوب(Well) ، روش کار zip به این صورت است که اگر بخواهید فایلی را به آرشیو موجود در آرشیو اضافه کنید، فایل‌های جدید فایل‌های قدیمی را بازنویسی می‌کنند. بنابراین، از آنجایی که اسنادی که روی دسک‌تاپ(Desktop) خود ایجاد کرده‌ایم (doc2.txt و doc3.txt) دارای محتوایی هستند («سلام جهان!» را به doc2.txt و «yay» را به doc3.txt اضافه کردیم)، باید بتوانیم آن اسناد را اضافه کنید و سپس بتوانید آن را آزمایش کنید.  ابتدا(First) ، دو سند «اضافی» را به پوشه Stuff می کشیم.(Stuff)

احتمالاً از شما سؤال می شود که آیا می خواهید اسناد جدید اسناد موجود را بازنویسی کنند (این در پوشه است، به یاد داشته باشید، نه بایگانی فشرده)، بنابراین اجازه دهید این اتفاق بیفتد.

اکنون که این کار انجام شد، بیایید آنها را با تایپ zip test Stuff/doc2.txt Stuff/doc3.txt

14Adding_Files_To_Archive

متوجه خواهید شد که دستور بالا اکنون فایل‌ها را به‌جای اضافه شدن به‌روزرسانی می‌کند. اگر اکنون آرشیو را بررسی کنیم، متوجه می‌شویم که فایل‌ها یکسان به نظر می‌رسند، اما وقتی doc2.txt و doc3.txt باز می‌شوند، می‌بینید که اکنون محتوایی در آنها وجود دارد، به جای اینکه فایل‌های اصلی ما خالی باشند. بود.

گاهی اوقات در لینوکس(Linux) ، با اضافه کردن نقطه (.") به ابتدای نام فایل، می بینید که برخی از فایل ها پنهان می شوند. این امر به ویژه برای فایل‌های پیکربندی رایج است، که باید وجود داشته باشند، اما اغلب قابل مشاهده نیستند (که باعث می‌شود درهم‌تنیدگی را کاهش دهد و همچنین احتمال حذف تصادفی یک فایل پیکربندی را کاهش می‌دهد). ما می توانیم اینها را به راحتی به یک فایل فشرده اضافه کنیم.  ابتدا(First) فرض کنید می خواهیم از هر فایلی در یک دایرکتوری یک فایل فشرده به نام پشتیبان ایجاد کنیم. ما می توانیم این کار را با تایپ zip backup * در ترمینال انجام دهیم.

15Add_All_Files

این کار همه فایل‌ها و پوشه‌ها را اضافه می‌کند، اگرچه هیچ موردی در آن پوشه گنجانده نمی‌شود. برای اضافه کردن آنها، ما دوباره -r ​​را اضافه می کنیم، به طوری که zip -r backup * دستور خواهد بود.

16Add_Files_Recursively

اکنون تقریباً به آنجا رسیده ایم. برای افزودن بازگشتی پوشه‌ها، فایل‌ها و فایل‌های مخفی، دستور در واقع بسیار ساده است: zip-r backup.

17Add_Files_Recursively_And_Hidden

اکنون، باز کردن زیپ بسیار آسان است. با این حال، قبل از انجام هر کاری، اسناد روی دسکتاپ(Desktop) (doc2.txt و doc3.txt) و همچنین پوشه Stuff را حذف کنید. وقتی آنها از بین رفتند، تایپ کردن unzip test.zip محتویات بایگانی زیپ شده اصلی ما را در فهرست فعلی شما گسترش می دهد.

18 Unzip_Archive

توجه: اگر اسناد را حذف نکرده بودیم، سعی می‌کردیم محتویات فایل فشرده خود را در یک فایل موجود از حالت فشرده خارج کنیم، بنابراین از شما پرسیده می‌شود که آیا می‌خواهیم تک تک سندها را جایگزین کنیم.

و بس! Zipping و Unzipping یک کار بسیار رایج است، و در حالی که مطمئناً گزینه های رابط کاربری گرافیکی(GUI) در دسترس هستند، با تمرین متوجه خواهید شد که انجام همان وظایف از ترمینال(Terminal) نیز چندان دشوار نیست.



About the author

من یک توسعه دهنده وب با تجربه در Firefox و Google Docs هستم. من مدرک مدیریت بازرگانی از دانشگاه فلوریدا دارم. مهارت های من عبارتند از: توسعه وب سایت، سیستم مدیریت محتوا (CMS)، تجزیه و تحلیل داده ها، و طراحی رابط کاربری. من یک مشاور باتجربه هستم که می‌توانم به تیم شما در ساخت وب‌سایت‌ها و اپلیکیشن‌های مؤثر کمک کنم.



Related posts