نظرة متعمقة على أوامر الأرشفة والضغط في Linux
![نظرة متعمقة على أوامر الأرشفة والضغط في Linux نظرة متعمقة على أوامر الأرشفة والضغط في Linux](https://i0.wp.com/k7ail.com/wp-content/uploads/2023/06/tar-manpage.jpg?fit=800%2C343&ssl=1)
ال zip
يعتبر الأمر في Linux هو أبسط الطرق وأكثرها سهولة للعمل مع ملفات ZIP في سطر الأوامر. وليس ذلك فحسب ، فإن تنسيق ملف ZIP عالمي – فكل نظام تشغيل تقريبًا به برنامج أصلي يمكنه العمل معه. إليك جميع الطرق التي يمكنك من خلالها استخدام هذا الأمر في أي سطر أوامر Linux.
كيفية تثبيت Zip في Linux
أحدث إصدار من Linux zip
يجب أن يكون الأمر متاحًا في جميع مديري الحزم الرئيسيين.
بالنسبة إلى Debian / Ubuntu:
بالنسبة إلى Arch Linux:
بالنسبة لفيدورا:
لجينتو
ملحوظة: قبل تثبيت أي شيء ، تأكد من تحديث مدير الحزم أولاً للحصول على ملف zip
أحدث إصدار من الأمر. يمكنك تعلم كيفية القيام بذلك وأكثر من خلال ورقة الغش الخاصة بمدير حزمة Linux.
ملحوظة: مع zip
المثبتة ، و unzip
سيكون الأمر متاحًا الآن أيضًا.
أمر Zip في Linux: التركيب والخيارات
هناك بناء جملة أساسي لملف zip
الأمر ، ويستغرق الأمر معلمتين فقط: اسم ملف الإخراج ZIP واسم ملف الإدخال.
zip [options] <zip-file.zip> <files-to-archive>
مواقفهم مهمة هنا. إذا قمت بذلك في الاتجاه المعاكس ، فسوف يتساءل الكمبيوتر عن سبب محاولتك إنشاء “file-to-archive.jpg” معه من “zip-file.zip” غير موجود ويعيد الخطأ .
بالنسبة لتعيين الخيارات ، ستحتاج إلى العمل مع الأعلام. هناك 8 أعلام قد تحتاجها بانتظام للاستخدام العادي:
-d
حذف الإدخالات المؤرشفة المحددة في ملف ZIP.-q
نفذ المهمة بهدوء دون طباعة أي شيء على الجهاز.-T
اختبار سلامة ملف ZIP.-e
تشفير الملف.-u
تحديث ملف ZIP عن طريق إضافة ملفات جديدة إلى الأرشيف.-m
نقل الملف إلى الأرشيف.-r
إضافة الملفات بشكل متكرر داخل مجلد إلى ملف ZIP.-x
استبعاد الملفات بأسماء الملفات المحددة.-i
قم بتضمين الملفات ذات الأسماء المحددة فقط.
يمكنك وضع العلامات في أي مكان تريد سواء كانت قبل الإخراج ، بعد الإدخال ، بين الاثنين – يمكنك حتى استخدام علامات متعددة مبعثرة في جميع أنحاء السطر بأي ترتيب. فقط تأكد من كتابتها بعد الكتابة zip
.
الاستثناء -x
و -i
التي تحتاج إلى مدخلات جديدة بعد استخدامها.
كيفية ضغط ملف في Linux باستخدام أمر Zip
أسهل طريقة لأرشفة الملفات بامتداد zip
الأمر هو الكتابة zip
متبوعًا باسم ملف ملف ZIP ثم الملف الذي تحاول أرشفته أو ضغطه. تعتبر العلامات اختيارية ، لذا يمكنك القيام بذلك على هذا النحو لضغط أي ملف بسرعة على نظام Linux.
zip archive.zip text_file.txt
يمكنك أيضًا إضافة المزيد من الملفات عن طريق إضافة الملفات الأخرى بعد الملف الأول الذي كنت تحاول أرشفته. وإذا احتوى أي من هؤلاء على مسافات في أسمائهم ، فيمكنك إحاطةهم بعلامات اقتباس.
zip archive.zip "file 1.txt" "file 2.txt" "file 3.txt" "file 4.txt"
![أرشفة المحطة الطرفية لملفات متعددة في مثال واحد لأمر Zip Linux](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/terminal-archiving-multiple-files-in-one-linux-zip-command-example.jpg?resize=658%2C476&ssl=1)
استخدام العلم -d
ال -d
تتيح لك العلامة حذف ملف مؤرشف داخل ملف ZIP بنفس الطريقة التي كنت ستضيفه بها إلى ملف.
zip -d archive.zip remove_me.jpg
![محطة Linux باستخدام D Flag 1](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-d-flag-1.jpg?resize=658%2C476&ssl=1)
يمكنك أيضًا استخدامه لإزالة المجلدات بأكملها داخل الأرشيف. ومع ذلك ، لن يعمل هذا مع الملفات خارج ملف ZIP (لذلك لا يمكنك استخدامه لحذف الملفات بعد الأرشفة).
استخدام العلم -q
ال -q
العلم هو التأكد من ذلك zip
لن تعيد رسالة عندما تقوم بعملها.
zip -q archive.zip text_file.txt
![Linux Terminal باستخدام Q Flag](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-q-flag.jpg?resize=658%2C476&ssl=1)
إنه مفيد عند استخدام ملف zip
الأمر مع البرنامج النصي. ولكن إذا كنت تستخدم هذا بنفسك ، فقد ترغب في تجنب استخدام ملف -q
علامة لأنك لن تعرف ما إذا كانت عملية الأرشفة ناجحة دون التحقق من dir
أو ls
يأمر.
استخدام العلم -T
بعض الملفات يمكن أن تتلف بعض ملفات ZIP أثناء التنزيل – يحدث ذلك. يمكنك استخدام ال -T
علم للتحقق من النزاهة حتى تعرف ما إذا كان بالفعل ملفًا مكسورًا أم أنك تقوم فقط بإدخال كلمة مرور خاطئة.
![Linux Terminal باستخدام Big T Flag](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-big-t-flag.jpg?resize=658%2C476&ssl=1)
هذا مهم جدًا عند تنزيل ملفات كبيرة مثل صور نظام التشغيل. بالنسبة لملفات مثل هذه ، يمكنك نسخها بنجاح إلى USB مباشر وينتهي بك الأمر مع وجود أخطاء بمجرد تشغيل ملف الصورة على جهازك. الشيء نفسه ينطبق على مقاطع الفيديو والموسيقى التي تحصل على أجزاء مقطّعة في أماكن عشوائية.
باستخدام العلم -u
إذا كنت ترغب في إضافة ملف جديد إلى ملف ZIP موجود ، يمكنك استخدام امتداد -u
علَم.
zip -u archive.zip new_file.txt
![محطة لينكس باستخدام علم يو](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-u-flag.jpg?resize=658%2C476&ssl=1)
يمكنك أيضًا إضافة المزيد من الملفات عن طريق إضافتها بعد الملف الأول ، كما لو كنت تستخدم ملف zip
الأمر بشكل طبيعي لإنشاء أرشيف ZIP جديد.
استخدام العلم -e
إذا كنت ترغب في إضافة كلمة مرور ، فأنت بحاجة إلى استخدام ملف -e
علَم. يطبق هذا الخيار فقط كلمة المرور والتشفير في الملف الذي تضيفه إلى ملف ZIP داخل الأمر الخاص به ، لذلك ستظل الملفات السابقة غير مشفرة إذا كنت تستخدم هذا مع -u
علَم.
zip -e archive.zip text_file.txt
![Linux Terminal باستخدام E Flag مع Terminal الذي يطلب كلمة المرور](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-e-flag-with-terminal-asking-for-password.jpg?resize=658%2C476&ssl=1)
إن الشيء العظيم في ملفات ZIP هو أن عملية إنشاء كلمة المرور تضيف أيضًا طبقة إضافية من الحماية إلى جانب منح حق الوصول. تعمل كلمة المرور الخاصة بك مثل التوقيع الرقمي الذي يتم استخدامه لفك تشفير طبقة تشفير إضافية تمت إضافتها إلى ملف ZIP.
استخدام العلم -m
أخيرًا ، -m
تحذف العلامة الملف الأصلي بعد أرشفته في ملف ZIP. فكر في هذا على أنه خطوة إضافية تلقائية حتى لا تضطر إلى إزالتها بنفسك.
zip -m archive.zip text_file.txt
![Linux Terminal باستخدام علامة M مع قبل وبعد Dir لإظهار اختفاء الملف](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-m-flag-with-before-and-after-dir-to-show-file-disappeared.jpg?resize=658%2C476&ssl=1)
على الرغم من ذلك ، هناك شيء مهم يجب تذكره: -m
العلم يحذف الملفات بطريقة تجعل من المستحيل استعادتها دون استخدام أداة استعادة الملفات. لذا تأكد من الاحتفاظ بنسخة احتياطية ، أو قم فقط بإزالة الأشياء يدويًا باستخدام الأمر rm بدلاً من ذلك.
كيفية ضغط مجلد في Linux باستخدام أمر Zip
إذا كنت تستخدم ملف zip
الأمر في مجلد خام ، فسيتم تركك مع مجلد لا يحتوي على أي ملفات على الإطلاق. عندما تحاول ضغط مجلد ما ، فأنت بحاجة إلى استخدام ملحق -r
علَم.
استخدام العلم -r
ال -r
العلم ، المعروف أيضًا باسم تكراري ، يمر عبر كل محتوى من مجلد ومجلداته الفرعية وأرشفته كل واحد في ملف ZIP. سيحتفظ أيضًا بالهيكل الحالي لكل مجلد فرعي.
zip -r archive.zip my_folder
![Linux Terminal باستخدام R Flag](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-r-flag.jpg?resize=658%2C476&ssl=1)
يعمل هذا أيضًا إذا كنت تريد أرشفة كل شيء داخل المجلد الحالي. فقط استبدل my_folder
مع ./
وسيغير هدفه إلى كل شيء داخل الهدف الحالي.
![استخدام أمر Linux Unzip مع علامة R على جميع الملفات الموجودة داخل المجلد الحالي](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/using-the-linux-unzip-command-with-r-flag-on-all-files-within-current-folder.jpg?resize=658%2C476&ssl=1)
علاوة على ذلك ، يمكنك استخدام هذا بجانب ملف -u
علامة لتضمين المجلدات ومحتوياتها في ملف ZIP موجود.
zip -r -u archive.zip another_folder
![Linux Terminal باستخدام R Flag مع U Flag](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-r-flag-with-the-u-flag.jpg?resize=658%2C476&ssl=1)
باستخدام العلم -i
ال -i
تتيح لك العلامة اختيار ملف معين تريد تضمينه واستبعاد أي شيء آخر داخل مجلد
zip -r archive.zip my_folder -i my_folder/a_subfolder/file1.txt
![Linux Terminal باستخدام I Flag](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-i-flag.jpg?resize=658%2C476&ssl=1)
باستخدام *
العلامات النجمية ذات -i
علم ، يمكنك تحديد الملفات التي تشترك في أسماء متشابهة ولكن يمكن أن تنتهي بشيء مثل رقم. على سبيل المثال ، الكتابة *.txt
سيجعل zip
يتضمن الأمر جميع ملفات TXT داخل المجلد.
zip -r archive.zip my_folder -i "*.txt"
![Linux Terminal باستخدام I Flag With Asterisk](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-i-flag-with-asterisk.jpg?resize=658%2C476&ssl=1)
باستخدام العلامة -x
ال -x
تتيح لك العلامة استبعاد ملفات معينة فقط أثناء ضغط مجلد كامل.
zip -r archive.zip my_folder -x my_folder/dont_zip.jpg
![محطة Linux باستخدام علامة X](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-x-flag.jpg?resize=658%2C476&ssl=1)
أيضا ، -x
يتجاوز العلم ال -i
علم عند استخدامها معًا. بهذه الطريقة ، يمكنك ، على سبيل المثال ، أن تقول zip
لتضمين جميع الملفات الأخرى من نفس النوع باستثناء الملف الذي لا تريده أن يضغط.
zip -r archive.zip my_folder -i "*.txt" -x my_folder/dont_zip.txt
![Linux Terminal باستخدام X Flag وأنا أعلم معًا](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/linux-terminal-using-the-x-flag-and-i-flag-together.jpg?resize=658%2C476&ssl=1)
كيفية فك ضغط ملف باستخدام Linux Zip Command
برنامج unzip هو برنامج شريك لبرنامج zip الافتراضي. يقوم باستخراج الملفات من أرشيف ZIP الخاص بك.
لاستخدام هذا البرنامج ، ما عليك سوى الكتابة unzip
واسم ملف أرشيف ZIP.
![أمر أساسي لفك ضغط Linux](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/basic-linux-unzip-command.jpg?resize=658%2C476&ssl=1)
باستخدام ملف unzip
الأمر ، ستقوم بفك ضغط ملف ZIP داخل دليل العمل الحالي بغض النظر عن المكان الذي جاء منه ملف ZIP.
لاستخراج أو فك ضغط ملف Linux داخل ملف مضغوط بحيث يظل الآخرون غير مستخرجين ، يمكنك إضافة اسم الملف الخاص به بعد الجزء الذي تكتب فيه الأرشيف.
unzip archive.zip file.txt
![انتقائي Unzip File Txt](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/selective-unzip-file-txt.jpg?resize=658%2C476&ssl=1)
كيفية فك ضغط مجلد Linux باستخدام Zip
بينما يؤدي فك الضغط عادةً إلى استخراج المجلدات الموجودة داخل أرشيف ZIP ، قد يكون من الصعب جدًا جعله يستخرج مجلدات معينة فقط. لكن هذا لا يعني أنه مستحيل.
unzip archive.zip my_folder/a_subfolder/*
![محتويات انتقائية فك الضغط لمجلد واحد](https://i0.wp.com/www.maketecheasier.com/assets/uploads/2023/06/selective-unzip-contents-of-a-single-folder.jpg?resize=658%2C476&ssl=1)
هذا السطر من التعليمات البرمجية يستخرج كل شيء بداخله a_subfolder
.
أيضًا ، عند فك ضغط مجلد ، يقوم برنامج فك الضغط بإنشاء مجلد جديد داخل دليل العمل الحالي ويفك ضغط مجلداته هناك. في حالة وجود مجلد بنفس الاسم (أو وجود إصدار سابق من المجلد) ، يسأل عما إذا كان من المقبول استبدال الملف الموجود حاليًا في المجلد.
أسئلة مكررة
ماذا يفعل الأمر gzip في Linux؟
لينكس gzip
command هو أداة يمكنك استخدامها لتخزين وضغط الملفات في ملف GZ.
هل ZIP أفضل من TAR؟
بطريقة ما ، يعد ZIP أفضل من TAR لأن ملفات ZIP يمكنها ضغط محتوياتها وتشفيرها وحمايتها. ومع ذلك ، تهدف ملفات TAR إلى دمج الملفات في ملف واحد لنقل الملفات بشكل أسرع بينما تأتي ملفات ZIP (على الرغم من استخدامها لنفس الغرض) مع هذه الميزات الإضافية في الاعتبار.
هل TAR أسرع من ZIP؟
لا تقوم ملفات TAR بضغط محتوياتها أو تشفيرها. لذلك إذا كنت تبحث عن طريقة أسرع لدمج كمية كبيرة من الملفات في أرشيف واحد سهل النقل ، فسترى بعض المكاسب مع TAR مقارنة بـ ZIP. ومع ذلك ، قد تجد أنه من الأسهل نقل ملف ZIP بدلاً من ملف TAR لأن ملفات ZIP تميل إلى أن تكون أصغر بكثير من ملفات TAR.
رصيد الصورة: Unsplash ، لقطات من Terenz Jomar Dela Cruz
اشترك في نشرتنا الإخبارية!
يتم تسليم أحدث دروسنا مباشرة إلى صندوق الوارد الخاص بك