Hallo, ich habe kürzlich ein Befehlszeilentool zum Komprimieren von Dateien geschrieben und möchte es heute mit Ihnen teilen.
dafür waren einige unkontrollierbare Umstände in der früheren Firma. Ich habe kürzlich den Job gewechselt und bin von Mac auf Win umgestiegen. Jetzt war ich an Terminaloperationen gewöhnt und fühle mich nicht sehr wohl damit, obwohl Win mitgeliefert wird, ist powershell
auch sehr leistungsfähig.
Die bei der Arbeit entwickelten Projekte müssen vor dem Testen in komprimierte Pakete komprimiert und dann zum Testen in die entsprechende Desktop-Anwendung hochgeladen werden.
Die meisten aus dem Internet heruntergeladenen Komprimierungsprogramme werden mit Werbung geliefert.
Der Komprimierungsbefehl in powershell
ist zu lang und umständlich. Darüber hinaus können von Compress-Archive
komprimierte Dateien nicht korrekt analysiert werden.
Der letzte Grund ist, dass ich keine powershell
-Befehle mehr lernen möchte! ! !
Aus den oben genannten Gründen habe ich ein Komprimierungstool fzip
mit nodejs
mit Compress-Archive
Verwenden Sie
fzip
zum Komprimieren vonfzip -f ./test.
Compress-Archive
zum Komprimieren vonCompress-Archive -Path ./test -DestinationPath ./ test .Reißverschluss #Erklären Sie die Parameter# -Path Source# -DestinationPath
Die beiden Anweisungen über dem Ausgabeort komprimieren das Testverzeichnis im aktuellen Verzeichnis in ein Zip-Paket, aber die Anweisungen zur Verwendung powershell
sind wirklich lang!
Natürlich unterstützt fzip
auch die Angabe des Ausgabeorts und die Benennung des komprimierten Pakets. Darüber hinaus unterstützt es auch das Festlegen der Komprimierungsstufe! Nachfolgend finden Sie eine ausführliche Dokumentation für Sie!
npm
, umnpm install @lxqddd/fzip -gzu installieren.
yarn
, umYarn zu installieren. install @lxqddd/fzip -g.Verwenden Sie pnpm, um
pnpm
pnpm
installieren.Parameterbeschreibung | Parameterparameterquelle | Parameteranmerkung |
---|---|---|
-f | Vom | Komprimierungsziel Quelle (erforderlich optional) |
-o | Ausgabeort des Ausgabekomprimierungsprodukts (optional, wenn nicht übergeben, ist es das gleiche Ebenenverzeichnis wie die Quelle | ) |
-l | Ebenenkomprimierungsstufe | 0 bis 9 (optional, wenn nicht übergeben, ist der Standardwert 6) |
-n | Name | des komprimierten Pakets (optional). Wenn nicht übergeben, wird standardmäßig der Name der Datei oder des Verzeichnisses verwendet. |
. ├── LIZENZ ├── README.md ├── gulpfile.js ├── package.json ├── src │ ├── Klienten │ ├── Kern │ │ └── index.ts │ ├── Typen │ │ └── index.ts │ └── Dienstprogramme │ └── index.ts ├── tsconfig.json └──
# Nachdem der Befehl ausgeführt wurde, wird ein komprimiertes Paket von „src.zip“ im Verzeichnis derselben Ebene wie „fzip -f“ ausgegeben./src
# Nachdem der Befehl ausgeführt wurde, wird ein komprimiertes Paket von „src.zip“ auf dem Desktop ausgegeben. Das komprimierte Paket von „src.zip“gibt
die
Die Komprimierungsstufe des Komprimierungsprodukts beträgt 9 fzip -f ./src -o ~/Desktop -l
# Nachdem der Befehl ausgeführt wurde, wird ein komprimiertes Paket mit dem Namen „test.zip“ im allgemeinen Verzeichnis von „src“ ausgegeben fzip -f ./src -n DasDer oben erwähnte
Test
komprimiert das Verzeichnis und kann auch eine einzelne Datei komprimieren. Die Verwendungsmethode ist ähnlich. Sie müssen nur den Eingabepfad auf die komprimierte Zieldatei verweisen, um
eine einzelneDateizu
Mit dem Namen „test. zip“ komprimiertes Paket fzip -f ./src/cli.ts -o ~/Desktop -n test -l 9
Projektadresse: https://github.com/lxqddd/FZip