Halo, Saya baru-baru ini menulis alat baris perintah untuk mengompresi file, dan saya ingin membaginya dengan Anda hari ini.
adalah karena beberapa keadaan yang tidak dapat dikendalikan di perusahaan sebelumnya. Saya baru saja berganti pekerjaan dan beralih dari Mac ke Win. Ketika saya menggunakan Mac sebelumnya, saya sudah terbiasa dengan operasi terminal dengan itu, meskipun Win hadir dengan itu. powershell
juga sangat kuat.
Proyek yang dikembangkan di tempat kerja perlu dikompresi menjadi paket terkompresi sebelum pengujian, dan kemudian diunggah ke aplikasi desktop yang sesuai untuk pengujian.
Sebagian besar perangkat lunak kompresi yang diunduh dari Internet dilengkapi dengan iklan.
Perintah kompresi di powershell
terlalu panjang dan tidak nyaman untuk digunakan. Selain itu, setelah IDE aplikasi desktop ditingkatkan, file yang dikompresi oleh Compress-Archive
tidak dapat diurai dengan benar.
Alasan terakhir adalah saya tidak ingin mempelajari perintah powershell
lagi! ! !
Berdasarkan alasan di atas, saya menulis alat kompresi fzip
menggunakan nodejs
dengan Compress-Archive
Gunakan
fzip
untuk mengompresfzip -f ./test
Compress-Archive
untuk mengompresCompress-Archive -Path ./test -DestinationPath ./ test .ritsleting #Jelaskan parameternya# -Path Source# -DestinationPath
Kedua instruksi di atas lokasi keluaran akan memampatkan direktori pengujian di direktori saat ini ke dalam paket zip, tetapi instruksi untuk menggunakan powershell
sangat panjang!
Tentu saja fzip
juga mendukung penentuan lokasi keluaran dan penamaan paket terkompresi. Tidak hanya itu, fzip juga mendukung pengaturan tingkat kompresi! Akan ada dokumentasi terperinci untuk Anda di bawah ini!
npm
untuk menginstalnpm install @lxqddd/fzip -g
yarn
untuk menginstalYarn install @lxqddd/fzip -g
pnpm
untuk menginstalpnpm install @lxqddd/fzip -g
Parameter | parameter sumber | Anotasi parameter |
---|---|---|
-f | Dari | target kompresi sumber (wajib Opsional) |
-o | Lokasi keluaran produk kompresikeluaran | (opsional, jika tidak diteruskan, direktori levelnya akan sama dengan sumbernya) |
-l | Tingkat kompresilevel | 0~9 (opsional, jika tidak diteruskan, defaultnya adalah 6) |
-n | Nama | nama paket terkompresi (opsional), jika tidak diteruskan, maka akan default ke nama file atau direktori) |
. ├── LISENSI ├── README.md ├── gulpfile.js ├── paket.json ├── src │ ├── kli.ts │ ├── inti │ │ └── indeks.ts │ ├── jenis │ │ └── indeks.ts │ └── kegunaan │ └── indeks.ts ├── tsconfig.json └──
# Setelah perintah dijalankan, paket terkompresi `src.zip` akan dikeluarkan di direktori dengan level yang sama dengan `src`. fzip -f ./src
# Setelah perintah dijalankan, paket terkompresi `src.zip` akan ditampilkan di desktop. Paket terkompresi `src.zip` fzip -f ./src -o ~/Desktop
# The tingkat kompresi produk kompresi adalah 9 fzip -f ./src -o ~/Desktop -l
# Setelah perintah dijalankan, paket terkompresi bernama `test.zip` akan dikeluarkan di direktori umum `src` fzip -f ./src -n tes
yang disebutkan di atas semua mengompresi direktori, dan juga dapat mengompresi satu file. Metode penggunaannya serupa. Anda hanya perlu mengarahkan jalur input ke file target terkompresi untuk
# Setelah perintah dijalankan, sebuah file bernama `test.zip` paket terkompresi fzip -f ./src/cli.ts -o ~/Desktop -n test -l 9
Alamat proyek: https://github.com/lxqddd/FZip