World Wide Web Consortium (W3C) har en rekke gratis verktøy tilgjengelig for å hjelpe til med riktig generering og behandling av HTML og XML-filer. HTML-XML-pakken er et sett med enkle verktøy for å manipulere HTML- og XML-filer fra kommandolinjen. Den er tilgjengelig for mange av de forskjellige Linux-distribusjonene, og kan være nyttig for de som må behandle HTML- eller XML-filer regelmessig.

For å installere pakken på Ubuntu, bruk:

 sudo apt-get install html-xml-utils 

Det finnes 31 verktøy i denne pakken, her er et sammendrag av hva de kan gjøre:

  • cexport - opprett headerfile av eksporterte erklæringer fra en C-fil
  • hxaddid - legg til ID-er til utvalgte elementer
  • hxcite - erstatt bibliografiske referanser ved hjelp av hyperkoblinger
  • hxcite-mkbib - utvider referanser og lager bibliografi
  • hxkopi - kopier en HTML-fil mens du beholder relative lenker
  • hxcount - telle elementer og attributter i HTML- eller XML-filer
  • hxextract - trekk ut utvalgte elementer
  • hxclean - bruk heuristikk for å korrigere en HTML-fil
  • hxprune - fjern merkede elementer fra en HTML-fil
  • hxincl-expand inkluderte HTML- eller XML-filer
  • hxindex - opprett en alfabetisk sortert indeks
  • hxmkbib - lag bibliografi fra en mal
  • hxmultitoc - Lag en innholdsfortegnelse for et sett med HTML-filer
  • hxname2id- flytt noen ID = eller NAME = fra A-elementer til foreldrene sine
  • hxnormalize - pretty-print en HTML-fil
  • hxnum - nummer seksjonsoverskrifter i en HTML-fil
  • hxpipe- konverter XML til et format lettere å analysere med Perl eller AWK
  • hxprintlinks- nummer linker og legg til tabell med webadresser på slutten av en HTML-fil
  • hxremove - fjern valgte elementer fra en XML-fil
  • hxtabletrans - transponere et HTML- eller XHTML-tabellen
  • hxtoc - sett inn en innholdsfortegnelse i en HTML-fil
  • hxuncdata - erstatt CDATA seksjoner etter tegn enheter
  • hxunent - erstatte HTML forhåndsdefinerte tegn enheter til UTF-8
  • hxunpipe- konvertere utdata av røret tilbake til XML-format
  • hxunxmlns - erstatt "globale navn" ved hjelp av XML-navnspace-prefikser
  • hxwls - liste lenker i en HTML-fil
  • hxxmlns - erstatt XML-prefiks for prefiks med "globale navn"
  • asc2xml, xml2asc- konverter mellom UTF8 og enheter
  • hxref - generere kryssreferanser
  • hxselect-ekstraktelementer som samsvarer med en (CSS) velger

For å introdusere deg til kraften til dette verktøysettet, her er noen eksempler på hvordan du vil bruke noen av kommandoene.

Kommandoen " hxnormalize " vil reformatere en HTML-fil slik at den er lett å lese og pent formatert. For å teste denne kommandoen, vil vi lage en stygg HTML. Velg og kopier følgende linjer og lim dem direkte inn i et terminalvindu.

 katt> test.html << __EOF__ 

Hallo __EOF__

Dette vil opprette en fil som heter test.html. HTML-en mangler noen av de avsluttende kodene og er skrevet i en linje. hxnormalize kommandoen vil formatere filen og skrive den vakre versjonen til standardutgangen (stdout). Slik gjør du kommandoen:

 hxnormalize -e test.html 

"-e" -flagget forteller hxnormalisere for å sette inn eventuelle manglende lukkekoder.

Du kan også kjøre kommandoen mot en nettside ved å erstatte "test.html" med en nettadresse, for eksempel:

 hxnormalisere http://www.example.com 

hxwls kommandoen vil analysere en lokal HTML-fil eller et nettsted, og oppgi linkene i HTML-koden. For eksempel:

 hxwls http://www.example.com 

Her er de første utgangslinjene for Make Tech Easier-nettstedet:

Kommandoen hxtabletrans endrer et bord slik at rader blir kolonner og kolonner blir rader.

La oss lage en HTML-fil med et enkelt bord. Velg og kopier følgende linjer, og lim dem deretter direkte inn i et terminalvindu.

 katt> table.html << __EOF__ 
JillSmith50
EveJackson94
__EOF__

Resultatet er en fil som heter table.html. I en nettleser ville tabellen se slik ut:

JillSmith50
EveJackson94

Hvis du kjører kommandoen hxtabletrans, vil den skrive den transponerte tabellen til standardutgangen. Resultatene kan omdirigeres til en annen fil som dette:

 hxtabletrans table.html> table2.html 

Den nye filen, table2.html, viser Jill Smith og Eve Jackson i kolonner, i stedet for i rader som i originalen. Den resulterende tabellen vil være noe slikt:

JillEve
SmithJackson
5094

De fleste kommandoer brukes på samme måte som eksemplene ovenfor, det vil si at du må spesifisere en fil eller URL for å behandle og utdataene er skrevet til stdout. Prøv å eksperimentere med de forskjellige kommandoene som du kanskje finner dem nyttige.

Hvis du har spørsmål om HTML-XML-verktøyene, kan du gjerne spørre dem i kommentarene nedenfor, og vi vil se om vi kan hjelpe.