Man Linux: Main Page and Category List

NAME

       hxcopy - copy an HTML file and update its relative links

SYNOPSIS

       hxcopy [ -i old-URL ] [ -o new-URL ] [ file-or-URL [ file-or-URL ] ]

DESCRIPTION

       The  hxcopy  command  copies its first argument to its second argument,
       while updating relative links. The input is assumed to be HTML or XHTML
       and may be slightly reformatted in the process.

       If the second argument is omitted, hxcopy writes to standard output. In
       this case the option -o is required. If  the  first  argument  is  also
       omitted,  hxcopy  reads from standard input. In this case the option -i
       is required.

OPTIONS

       The following options are supported:

       -i old-URL
                 For the purposes of updating relative links, act as  if  old-
                 URL  is  the location from which the input is copied. If this
                 option is omitted, the actual location of the first  argument
                 is used for calculating relative links.

       -o new-URL
                 For  the  purposed of updating relative links, act as if new-
                 URL is the location to which the input  is  copied.  If  this
                 option is omitted, the actual location of the second argument
                 is used for calculating relative links.

EXAMPLES

       Assume  the  HTML  file  foo.html   contains   a   relative   link   to
       "../bar.html". Here are some examples of commands:

       hxcopy foo.html bar/foo.html
              The  file foo.html is copied to ../bar/foo.html and the relative
              link to "../bar.html" becomes "../../bar.html".

       hxcopy foo.html ../foo.html
              The file foo.html is copied to ../foo.html and the relative link
              to "../bar.html" is rewritten as "bar.html".

       hxcopy   -i   http://my.org/dir1/foo.html   -o   http://my.org/foo.html
       fil.html fil.html
              The  file  fil.html  is  copied to fil.html and the relative
              link to "../bar.html" is rewritten as "bar.html". A command like
              this  may be useful to update files that are later uploaded to a
              server.

BUGS

       Unlike the last argument of cp(1), the last argument of hxcopy must  be
       a file, not a directory.

       The  second  argument must be a local file. Writing to a URL is not yet
       implemented.  To   work   around   this,   replace   hxcopy   file.html
       http://example.org/file.html  by hxcopy -o http://example.org/file.html
       file.html tmp.html and then upload tmp.html to the given URL with  some
       other  command, such as curl(1).  The first argument, however, may be a
       URL.  hxcopy will download the given  file.  (Currently  only  HTTP  is
       supported.)

SEE ALSO

       cp(1), curl(1), hxwls(1)