مرحبًا، لقد قمت مؤخرًا بتأليف أداة سطر أوامر لضغط الملفات، وأود أن أشاركها معكم اليوم.
كانهو بعض الظروف التي لا يمكن السيطرة عليها في الشركة السابقة، فقد قمت مؤخرًا بتغيير وظيفتي وانتقلت من نظام 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