Szukam narzędzia lub sposób do Minify (podobny do Compress mojego kodu i tym pytaniem na stosie) cały kod w moim .xml
, .css
, .html
i .js
pliki przez Ubuntu Terminal. W końcu skryptuję ten proces, ale w tej chwili chciałbym po prostu znaleźć coś do przetestowania. Czy istnieje narzędzie, którego można użyć do kompresji wszystkich tych formatów plików przez terminal?
command-line
software-recommendation
DᴀʀᴛʜVᴀᴅᴇʀ
źródło
źródło
tar -czvf compressed.tar.gz *.xml *.css *.html *.php
?Odpowiedzi:
To nie jest najlepsza opcja, ale prawdopodobnie jest najłatwiejsza. Kompresor YUI od dawna uważany jest za najlepszy kompresor dla Javascript i CSS, oferujący 20-40% ulepszeń w stosunku do innych minifikatorów.
Od tego czasu został zastąpiony nowszymi projektami, takimi jak Uglify.JS (co prawdopodobnie zasugeruje Grunt), ale nadal dość łatwo jest uruchomić się w Ubuntu.
to jest to! Teraz możesz biegać,
yui-compressor myfile.js
a on wykona swoją magię, po prostu nie tak dobrze lub tak wygodnie, jak poprawnie zainstalować stos Node / Grunt / Uglify + YUI.źródło
more-css
pakietu NPM w celu zminimalizowania CSS jest bardziej uciążliwe niż używanie kompresora yui. To nie jest To tylko kolejne polecenie, które robi to samo lepiej.Możesz łatwo zminimalizować js za pomocą węzła i uglify-js z wiersza poleceń:
zainstaluj uglify-js przy pomocy
npm install uglify-js -g
Uruchom
uglifyjs app-test.js > app-test.min.js
Dla css sugerowałbym przykładowe użycie clean-css (prawdopodobnie najbardziej stabilnego minizatora css na npm)
:
Jeśli chodzi o html, zwykle minimalizacja nie jest zwykle warta czasu, który poświęcasz na jego konfigurację, ale próbowałem html-minifier i jest to niesamowite narzędzie.
Cokolwiek robisz, pamiętaj, aby zgarnąć to, co serwujesz.
źródło
uglify
można bezpośrednio zainstalować zsudo apt-get install node-uglify
uglify
razem zapt
tobą, również musisz zainstalowaćnode-legacy
, więc uruchomsudo apt install node-uglify node-legacy
cleancss
narzędzie CLI jest teraz wclean-css-cli
pakiecie.Użyj minify - w przeciwieństwie do innych sugestii, to narzędzie minimalizuje znacznie więcej typów plików:
źródło
Nie ma powodu, aby minimalizować pliki php (z wyjątkiem tego, że masz bardzo ograniczone miejsce na dysku i chcesz z niego korzystać).
Jeśli możesz dodać cel (co chcesz osiągnąć i dlaczego?), Ktoś może pokazać ci lepszy sposób.
Pliki JS i CSS są minimalizowane w czasie wykonywania i buforowane w większości projektów internetowych. Istnieje minify ( https://github.com/mrclay/minify ), „biblioteka” php, która jest w stanie to zrobić. (można również wykonać przy pomocy php z terminala)
Należy jednak pamiętać, że jeden duży plik javascript nie musi ładować się szybciej niż 5 małych plików. Jeśli potrzebujesz powodu i rozwiązania dla tego oświadczenia, spójrz na http://headjs.com/
Niech źródło będzie z tobą ...
źródło
Poleciłbym użyć Grunt.js . Jest to narzędzie do automatyzacji, które ma minifikatory dostępne jako wtyczki i może być uruchamiane w twoim terminalu przez Node.js. Nie powinno być konieczne minimalizowanie PHP, ponieważ kod jest wykonywany po stronie serwera, a tylko jego dane wyjściowe HTML są wysyłane do klienta.
Dostępne wtyczki można znaleźć tutaj
źródło
Mam dobre wyniki z Kompilatorem zamknięcia .
Jest opracowany przez Google i napisany w Javie. Jest spakowany dla systemów opartych na Debianie
closure-compiler
i jest łatwy do zainstalowania w systemach Ubuntu. Ponieważ nie używa GUI, wymaga bardziej lekkiegodefault-jre-headless
pakietu.Jest wolniejszy niż kompresor YUI, ale wynikowy rozmiar pliku jest (nieco) mniejszy. Drukuje także przydatne komunikaty ostrzegawcze, podobne do kompilatorów dla innych języków programowania.
Dokumentacja: Pierwsze kroki
Stosowanie:
źródło
Inną opcją jest użycie
npx
polecenia z Node.js.npx
uruchamia polecenie pakietu Node.js bez jawnej instalacji.źródło