Mam przepływ pracy, który generuje pliki HTML przekraczające 10 MB. Chciałbym podzielić te 10 MB plików na mniejsze pliki .. więcej w zakresie 1 MB.
Plik HTML zawiera wewnętrzne linki i kotwice. Więc jakiekolwiek narzędzie, którego użyję, musiałoby odpowiednio zmienić <a href="../foo>foo</a>
i <a id="fooID"></a>
odpowiednio użyć nazw mniejszych plików.
Wyobrażam sobie, że jakieś narzędzie zepsuje plik we wcześniej określonej lokalizacji, prawdopodobnie w każdym punkcie.
Czy ktoś wie o narzędziu wiersza polecenia lub skrypcie do automatyzacji?
AKTUALIZACJA: Skończyłem tworzenie własnego skryptu bash, aby to zrobić. Żałuję, że nie mogę udostępnić kodu, ale sparafrazuję go:
- utwórz podkatalog, aby umieścić wynikowe podzielone pliki HTML
- podziel plik (użyłem xslt 2.0)
- Umieszczam oryginał
<head>
we wszystkich plikach - Użyłem ścieżki x, która podzieliła plik na określony znacznik na poziomie bloku
- Umieszczam oryginał
- Powtarzaj (xslt 2.0) przez katalog nowych plików, aby utworzyć tymczasowy plik XML z dwoma polami:
- nazwa pliku
- @ id znaleziono
- Ponownie uruchom (xslt 2.0) przez katalog nowych plików HTML. Każdy @ href został porównany z plikiem XML par @ id / nazwa_pliku, a href został w razie potrzeby poprawiony do nowej nazwy pliku
Jak dotąd działa. Chociaż nie jest to odpowiedź na to pytanie, ponieważ nie jest to specjalnie zbudowane narzędzie dostępne dla wszystkich.
html
ibody
. Jak więc proponujesz, aby uzyskać zdrową część dokumentu, gdy pokroisz go na środku?