
مرحبًا، لقد قمت مؤخرًا بتأليف أداة سطر أوامر لضغط الملفات، وأود أن أشاركها معكم اليوم.
كانهو بعض الظروف التي لا يمكن السيطرة عليها في الشركة السابقة، فقد قمت مؤخرًا بتغيير وظيفتي وانتقلت من نظام Mac إلى نظام Win، وكنت معتادًا على العمليات الطرفية معه، على الرغم من أن powershell Win يأتي معه أيضًا قوي جدًا.
يجب ضغط المشاريع التي تم تطويرها في العمل في حزم مضغوطة قبل الاختبار، ثم تحميلها إلى تطبيق سطح المكتب المقابل للاختبار.
تأتي معظم برامج الضغط التي يتم تنزيلها من الإنترنت مرفقة بالإعلانات.
أمر الضغط في powershell طويل جدًا وغير مناسب للاستخدام، علاوة على ذلك، بعد ترقية تطبيق سطح المكتب IDE، لا يمكن تحليل الملفات المضغوطة بواسطة Compress-Archive بشكل صحيح.
السبب الأخير هو أنني لا أريد أن أتعلم أوامر powershell بعد الآن! ! !

بناءً على الأسباب المذكورة أعلاه، كتبت أداة ضغط fzip باستخدام Nodejs
مع Compress-Archive استخدم
fzip لضغطfzip -f ./test
Compress-Archive لضغطCompress-Archive -Path ./test -DestinationPath ./ test. .أَزِيز #شرح المعلمات# -Path Source# -DestinationPath
ستقوم الإرشادات الموجودة أعلى موقع الإخراج بضغط دليل الاختبار في الدليل الحالي في حزمة مضغوطة، ولكن تعليمات استخدام powershell طويلة حقًا!
بالطبع، يدعم fzip أيضًا تحديد موقع الإخراج وتسمية الحزمة المضغوطة، وليس هذا فحسب، بل يدعم أيضًا تحديد مستوى الضغط! سيكون هناك وثائق مفصلة لك أدناه!
npm لتثبيتnpm install @lxqddd/fzip -g
yarn لتثبيتالغزل install @lxqddd/fzip -g
pnpm لتثبيتpnpm install @lxqddd/fzip -g
| مصدر معلمة | المعلمة | شرح المعلمة |
|---|---|---|
| -f | من | هدف الضغط المصدر (مطلوب اختياري) |
| -o | موقع إخراج منتج ضغطالإخراج | (اختياري، إذا لم يتم تمريره، فسيكون نفس دليل المستوى مثل المصدر) |
| -l | مستوى ضغطالمستوى | 0 ~ 9 (اختياري، إذا لم يتم تمريره، الافتراضي هو 6) |
| -n | اسم | اسم الحزمة المضغوطة (اختياري)، إذا لم يتم تمريره، فسيتم تعيينه بشكل افتراضي على اسم الملف أو الدليل) |
. ├── الترخيص ├── README.md ├── gulpfile.js ├── package.json ├── سرك │ ├── cli.ts │ ├── الأساسية │ │ └── فهرس ts │ ├── أنواع │ │ └── فهرس ts │ └── المرافق │ └── الفهرس.ts ├── tsconfig.json └──
# بعد تنفيذ الأمر، سيتم إخراج حزمة مضغوطة من `src.zip` في الدليل بنفس مستوى `src`.
# بعد تنفيذ الأمر، سيتم إخراج حزمة مضغوطة من `src.zip` على سطح المكتب. تحدد الحزمة المضغوطة من `src.zip` fzip -f ./src -o ~/Desktop
# مستوى الضغط لمنتج الضغط هو 9 fzip -f ./src -o ~/Desktop -l
# بعد تنفيذ الأمر، سيتم إخراج حزمة مضغوطة تسمى `test.zip` في الدليل العام لـ `src` fzip -f ./src -n الاختبار
المذكور أعلاه يضغط الدليل، ويمكنه أيضًا ضغط ملف واحد. طريقة الاستخدام متشابهة، ما عليك سوى توجيه مسار الإدخال إلى الملف المستهدف المضغوط لضغط
ملف
الحزمة المضغوطة المسماة `test.zip` fzip -f ./src/cli.ts -o ~/Desktop -n test -l 9
عنوان المشروع: https://github.com/lxqddd/FZip