packages icon



 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



 NAME
      weex - fast WEb EXchanger non-interactive FTP client



 SYNOPSIS
      weex [ Options ] HOSTID [HOSTID...]



 DESCRIPTION
      weex is a utility designed to automate the task of remotely
      maintaining a web page or other FTP archive. With weex , the
      maintainer of a web site or archive that must be administered through
      FTP interaction can largely ignore that process. The archive
      administrator simply creates a local directory that serves as an exact
      model for the offsite data. All modifications and direct interaction
      is done locally to this directory structure. When the administrator
      wishes to coordinate the data on the remote site with that of the
      local model directory, simply executing weex accomplishes this in the
      most bandwidth-efficient fashion by only transferring files that need
      updating. The program will create or remove (!) files or directories
      as necessary to accurately establish the local model on the remote
      server.

      The mandatory HOSTID argument is the user-defined name that represents
      a particular FTP account or configuration specified in the ~/.weexrc
      file. This file, the contents of which are described below, can
      alternatively be named ~/.weex/weexrc.  Multiple HOSTID arguments to a
      single weex command are supported to affect multiple archives or
      configurations in immediate succession. In addition, the actual HOSTID
      can be substituted with the number representing its relative
      sequential position in the ~/.weexrc file (the first HOSTID definition
      is 1, and so on).




 OPTIONS
      Options at the command line take precedence over any specified in the
      configuration file.

      -d, --debug-config
           Outputs the configuration of each hosts.


      -D, --debug-ftplib
           Outputs messages from/to FTP server.






                                    - 1 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



      -f, --force
           If the caching mechanism is inhibiting the uploading of files
           that should be transferred, this option will force the actual
           transfer to always occur.


      -h, --help
           Outputs a usage summary to stdout.


      -m, --monochrome
           The default mode generates a helpful color coding based on the
           operation being performed. This option suppresses that.


      -r, --rebuild-cache
           If cache file is broken, use this to rebuild it.


      -s, --silent
           The default mode outputs a helpful status message for each action
           taken, including file transfer progress meters.  This mode
           suppresses output.


      -t, --test
           Weex doesn't modify any remote files/directories.


      -V, --version
           Prints the version of the weex program.


 CONFIGURATION FILE
      Because this program is meant to be non-interactive, a properly set up
      configuration file is essential.  weex looks for this file either in
      ~/.weexrc or ~/.weex/weexrc.

      The general format of the configuration file is a bracketed section
      heading followed by parameters that define that section's
      configuration. This section name is what is provided to weex at run
      time to indicate the FTP arrangement you wish to update. A parameter
      is only valid for the most recent section heading that preceded it.
      The exception to this is the [default] section which creates settings
      for unspecified parameters in every section. In the case of parameters
      that accept multiple values, the default section augments any
      specifically designated values.

      Lines that begin with the '#' character are safely ignored as
      comments.  Neither section names nor parameter variables are case
      sensitive in any way. Section names can not begin with numbers. Some



                                    - 2 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



      parameters can be assigned multiple values. Where this is not
      possible, the last value is used. To quote special characters, use
      single quotes (') or double quotes ("). To quote a particular quote
      symbol, use the other quote. The general syntax format for the
      configuration file is:

      [hostid1]
            Parameter1 = Value
            # First method for multiple values
            Parameter2 = Value
            Parameter2 = Value
            ...

      [hostid2]
            Parameter1 = Value
            # Second method for multiple values
            Parameter2 = {
                   Value
                   Value
            }
            ...

      [default]
            Parameter = Value
            ...


      PARAMETER LIST

      These parameters are used to define the properties of a particular
      host configuration named in brackets. When specifying directory names,
      the trailing "/" is optional. Also, both files and directories (except
      SrcDir and DestDir) can be specified with shell wildcards.  When
      specifying files, if a file or file pattern is given without a path,
      it is assumed to be available when encountered in any directory.  If
      it is an explicitly specified path/file combination, the configuration
      is available in that directory.  Files/directories except `SrcDir' and
      `DestDir' can be specified as both absolute path and relative path.
      But you must specify `SrcDir' and `DestDir' as absolute path.  When
      you want to specify `/public_html/ignoreme.html' as relative path, you
      should specify `./ignoreme.html' rather than `ignoreme.html'.  When
      specifying binary states, you may use any of the following:
      True/False, Yes/No, T/F, 1/0. None are case sensitive.


      AsciiFile
           Filename patterns that will be transferred using ASCII mode. The
           default mode for files not specified in this way is IMAGE(BINARY)
           mode.





                                    - 3 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



      AuthorizationName
           If you are using an FTP proxy server that requires
           challenge/response authorization with the nonstandard AUTHORIZE
           and RESPONSE commands, set this parameter to your authorization
           user name (or number).  After logging in to the proxy, weex will
           prompt you with the challenge and read back a response.


      ChangePermission
           The access permissions of the files in the directories specified
           with ChangePermissionDir are changed to this parameter. The
           format is a three digit octal number.


      ChangePermissionDir
           Files in directories assigned to this parameter will have their
           access permissions changed after sending.  Specify local
           directories.


      ChdirAtConnection
           Set `true' to change remote current working directory to DestDir
           at connection.  If remote current working directory at connection
           is DestDir, weex runs faster a bit by setting this parameter to
           `false'.  Default is `true'.


      ConvToLower
           If set to `true', the filenames are converted to lower case
           before sending.  This feature allows interaction with FTP servers
           that do not support case sensitive filenames. If a naming
           conflict arises due to a lower case name already existing, an
           error occurs. Furthermore, the cache is totally unaware of
           original uppercase filenames.


      DestDir
           Destination directory on the remote FTP server where the mirrored
           information will be sent. This setting corresponds to the "pwd"
           command on traditional FTP clients.


      Force
           If the caching mechanism is inhibiting the uploading of files
           that should be transferred, this option will force the actual
           transfer to always occur if set to `true'.


      FollowSymlinks
           Set `true' to follow symbolic links.  Default is `false'.
           Symbolic link of directory assumes a file whose size is 0 byte at



                                    - 4 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



           default.


      FtpPassive
           When it is `false', weex uses port mode instead of passive mode.
           If the FTP server doesn't support passive mode, specify `false'.
           (It may make transfer slower) Default is `true'.  (See also FAQ)


      HostName
           Hostname to connect to. The "ftp://" protocol specifier is
           implied and shouldn't be used. An IP address is also valid and
           may save lookup time.


      IgnoreLocalDir
           This parameter contains one or more protected local directories
           that are completely ignored during the transfer process. This is
           useful if you want to have subdirectories that are part of a
           project but don't need to be in the final, online version (i.e.,
           old versions).


      IgnoreLocalFile
           This parameter contains one or more protected local file
           specifiers that will be completely ignored during the transfer
           process.


      IgnoreRemoteDir
           This parameter contains one or more protected remote directories
           that are completely ignored during the transfer process. This is
           useful if you want to have other material on the remote FTP site
           that is not related to the specific project that weex is dealing
           with. This could include, for example, data administered through
           a different FTP client or process.


      IgnoreRemoteFile
           This parameter contains one or more protected remote file
           specifiers that will be completely ignored during the transfer
           process.


      KeepRemoteDir
           In their directories, files are not removed when they don't exist
           in the local directory.


      LogDetailLevel
           It specifis how detail level weex records a log at.  Connection



                                    - 5 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



           and disconnection message and error messages are always recorded.
           When weex finishes working correctly, it writes `Complete'
           previous disconnection message.  If 1 or less, records each
           connection.  If 2, records each directory.  If 3 or more, records
           each file manipulated Default is 1.


      LoginName
           Login name of the account on the FTP server.


      MaxRetryToSend
           When weex fails in sending a file, it retry to send the file.
           The maximum times of retrying is this parameter.  Default is 8.
           Specify -1 to stop retrying.


      Monochrome
           The default mode generates a helpful color coding based on the
           operation being performed. A `true' setting suppresses that.


      NestSpaces
           An integer that controls the indent spacing of the output. The
           default is 4.  If you want to suppress it, specify -1. If you
           specify 0, weex uses 4. :-)


      OverwriteOK
           If the FTP server has trouble overwriting files, set this
           parameter to `false', and each file will be deleted before a new
           version is put in place.


      Password
           Plaintext password granting access to the account. Note that this
           file uses no special facilities to safeguard passwords. Make sure
           that the file permissions of a configuration file containing
           passwords are set conservatively. If they are not, a warning will
           be issued at execution.  If this parameter is not found, weex
           asks for it on the terminal.


      PreservePermissionDir
           The access permissions of the files in directories assigned to
           this parameter will be copied to remote.  Specify *local*
           directories.


      RecordLog
           When `true', weex create a log.



                                    - 6 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



      RenameOK
           If this parameter is set to `true', each file is uploaded under
           the temporary name `weex.tmp', then renamed to its correct name
           only if the upload succeeds.  This avoids the problem of a user
           getting an incomplete file if he downloads from your Web site
           while you are uploading to it, and of incomplete files being
           uploaded if your FTP connection breaks while weex is running .
           The default is `false' since some FTP servers might not support
           renaming.


      ShowHiddenFile
           Set `true' to get hidden files (starting with a dot) on FTP
           server which doesn't show hidden files by default.  Default is
           `false'.


      Silent
           The default mode outputs a helpful status message for each action
           taken, including file transfer progress meters. A `true' setting
           suppresses output.


      SrcDir
           Top of the source directory tree containing the local copy of the
           information to be mirrored. This setting corresponds to the "lcd"
           command on traditional FTP clients.



 EXAMPLES
      Here is an example of what a typical .weexrc file might look like:

       #-=-=-=-=-=Sample Configuration file=-=-=-=-=-
       # My favorite FTP account...
       [Ninja]
       HostName = ftp.ninja-rights.org
       LoginName = chrisxed
       Password = '"mYsEcReT!"'
       SrcDir = /home/chrisxed/project/weex
       DestDir = /
       ASCIIfile = *.c
       IgnoreLocalDir = /home/chrisxed/project/weex/weex.devel
       IgnoreLocalDir = /home/chrisxed/project/weex/weex.old
       IgnoreLocalFile = notes2myself.txt
       IgnoreRemoteDir = /offsitearchive/

       # Another FTP account...
       [Veggie]
       HostName = ftp.vegetable-advocacy.com
       LoginNAME = waxedbean



                                    - 7 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



       Password = "X'sBean"
       SrcDir = /home/chrisxed/project/legumes
       DestDir = /souppot/

       # Global configuration settings
       [default]
       AsciiFile = {
       *.htm
       *.html
       *.txt
       *.asc
       }
       IgnoreLocalFile = {
       *.bak
       *.tmp
       *.swp
       }

      With a configuration like this, executing:

      $ weex Ninja

      would cause the file system assigned to SrcDir to be completely
      mirrored on the remote server.  Executing:

      $ weex ninja veggie

      would cause the FTP update to occur for the "Ninja" configuration and
      then for the "Veggie" configuration. This could also be specified like
      this:

      $ weex 1 2



 NOTES
      Timestamp Cache Facility

      weex implements a cache of file timestamps from Ver 1.6.0.  This makes
      updating much faster when you have a lot of files.  In addition, weex
      also caches directory structure and file names from Ver 2.5.0.  So
      never slow transfer even if you have many directories and files.  If,
      however, you change the remote files with another FTP client or
      running weex is killed or weex is terminated by an error, the cache
      file will not be correct.  The simple solution to this problem is to
      remove the cache file (located in ~/.weex/weex.cache.HOSTNAME )
      completely or to run weex with option --rebuild-cache.







                                    - 8 -         Formatted:  April 19, 2024






 weex(1)                           YN-cxe                            weex(1)
                                 2000.05.22



      Tested Operating Systems

        Debian GNU/Linux 2.1
        Red Hat Linux 5.1/5.2/6.0/6.1J
        SuSE Linux 6.1/6.2/6.3
        Linux Mandrake 6.1
        FreeBSD(98) 3.0-RELEASE
        FreeBSD 3.3-RELEASE
        Solaris 2.5.1



 AUTHOR
      This very handy program was written by:
           Yuuki NINOMIYA <gm@debian.or.jp>

      The original man page was written by:
           Chris X Edwards <chrisxed@usa.net>

      The copyright of this software and documentation belongs to Yuuki
      NINOMIYA.  It is released under the terms of the GNU General Public
      License as published by the Free Software Foundation; either version
      2, or (at your option) any later version.  You can redistribute it
      and/or modify it under the GPL.

      This software uses shhopt for parsing command line options.  Shhopt is
      released under the Artistic License. You may use it separately under
      the Artistic License.


























                                    - 9 -         Formatted:  April 19, 2024