MyWebUniversity.com Home Page
 



Darwin Mac OS X man pages main menu
fileutil(n)                     file utilities                     fileutil(n)





NAME
       fileutil - Procedures implementing some file utilities

SYNOPSIS
       package require Tcl  8

       package require fileutil  ??1.6.1??

       ::::fileutil::::cat files

       ::::fileutil::::fileType filename

       ::::fileutil::::find ?basedir ?filtercmd??

       ::::fileutil::::findByPattern basedir ?-regexp-glob? ?--? patterns

       ::::fileutil::::foreachLine var filename cmd

       ::::fileutil::::grep pattern ?files?

       ::::fileutil::::install ?-m mode? source destination

       ::::fileutil::::stripN path n

       ::::fileutil::::stripPwd path

       ::::fileutil::::touch ?-a? ?-c? ?-m? ?-r reffile? ?-t time? filename ?...?

       ::::fileutil::::tempdir

       ::::fileutil::::tempfile ?prefix?



DESCRIPTION
       This package provides implementations of standard unix utilities.

       ::::fileutil::::cat files
              A tcl implementation of the UNIX cat command.  Returns the  con-
              tents of the specified file(s). The arguments are files to read.
              If there are problems reading any of the files,  an  error  will
              occur, and no data will be returned.

       ::::fileutil::::fileType filename
              An  implementation  of the UNIX file command, which uses various
              heuristics to guess the type of a file.  Returns a list specify-
              ing  as  much  type  information  as can be determined about the
              file, from most general (eg, "binary" or "text")  to  most  spe-
              cific (eg, "gif").  For example, the return value for a GIF file
              would be "binary graphic gif".  The command will detect the fol-
              lowing  types  of  files: directory, empty, binary, text, script
              (with interpreter), executable elf, graphic gif,  graphic  jpeg,
              graphic  png,  graphic  tiff,  html, xml (with doctype if avail-
              able), message pgp, binary pdf, text ps, text eps, binary  grav-
              itywavedataframe, compressed bzip, compressed gzip, and link.

       ::::fileutil::::find ?basedir ?filtercmd??
              An implementation of the unix command  find.  Adapted  from  the
              Tcler's  Wiki.  Takes  at  most  two  arguments, the path to the
              directory to start searching from and a command to use to evalu-
              ate  interest  in  each file. The path defaults to ".", i.e. the
              current directory. The command defaults  to  the  empty  string,
              which  means  that  all files are of interest. The command takes
              care not to loose itself in  infinite  loops  upon  encountering
              circular  link  structures.  The result of the command is a list
              containing the paths to the interesting files.

       ::::fileutil::::findByPattern basedir ?-regexp-glob? ?--? patterns
              This command is based  upon  the  TclX  command  recursiveglob,
              except that it doesn't allow recursion over more than one direc-
              tory at a time. It uses ::::fileutil::::find internally and is  thus
              able  to and does follow symbolic links, something the TclX com-
              mand does not do. First argument is the directory to  start  the
              search  in,  second  argument is a list of patterns. The command
              returns a list of all  files  reachable  through  basedir  whose
              names match at least one of the patterns. The options before the
              pattern-list determine the style of matching, either  regexp  or
              glob.  glob-style  matching  is  the  default  if no options are
              given. Usage of the option  --  stops  option  processing.  This
              allows the use of a leading '-' in the patterns.

       ::::fileutil::::foreachLine var filename cmd
              The  command reads the file filename and executes the script cmd
              for every line in the file. During the execution of  the  script
              the variable var is set to the contents of the current line. The
              return value of this command is the result of the  last  invoca-
              tion  of  the  script  cmd  or  the empty string if the file was
              empty.

       ::::fileutil::::grep pattern ?files?
              Implementation of grep. Adapted from the Tcler's Wiki. The first
              argument  defines the pattern to search for. This is followed by
              a list of files to search through.  The  list  is  optional  and
              stdin  will  be  used if it is missing. The result of the proce-
              dures is a list containing the matches. Each match is  a  single
              element  of  the list and contains filename, number and contents
              of the matching line, separated by a colons.

       ::::fileutil::::install ?-m mode? source destination
              The install command is similar in functionality to  the  install
              command found on many unix systems, or the shell script distrib-
              uted with many source distributions (unix/install-sh in the  Tcl
              sources,  for example).  It copies source, which can be either a
              file or directory to destination, which should be  a  directory,
              unless  source  is also a single file.  The ?-m? option lets the
              user specify a unix-style mode (either octal or symbolic  -  see
              file attributes.

       ::::fileutil::::stripN path n
              Removes the first n elements from the specified path and returns
              the modified path. If n is greater than the number of components
              in path an empty string is returned.

       ::::fileutil::::stripPwd path
              If the path is inside of the directory returned by [pwd] (or the
              current working directory itself) it is made  relative  to  that
              directory.  In  other  words,  the  current working directory is
              stripped from the path.  The possibly modified path is  returned
              as  the  result of the command. If the current working directory
              itself was specified for path the result is the string ".".

       ::::fileutil::::touch ?-a? ?-c? ?-m? ?-r reffile? ?-t time? filename ?...?
              Implementation of touch. Alter the atime and mtime of the speci-
              fied  files.  If  -c, do not create files if they do not already
              exist. If -r, use the atime and mtime from reffile. If -t,  use
              the  integer  clock value time. It is illegal to specify both -r
              and -t. If -a, only change the atime. If  -m,  only  change  the
              mtime.

              This command is not available for Tcl versions less than 8.3.

       ::::fileutil::::tempdir
              The command returns the path of a directory where the caller can
              place temporary files, such as "/tmp" on Unix systems. The algo-
              rithm we use to find the correct directory is as follows:

              [1]    The directory named in the TMPDIR environment variable.

              [2]    The directory named in the TEMP environment variable.

              [3]    The directory named in the TMP environment variable.

              [4]    A platform specific location:

                     Windows
                            "C:\TEMP", "C:\TMP", "\TEMP", and "\TMP" are tried
                            in that order.

                     (classic) Macintosh
                            The TRASHFOLDER  environment  variable  is  used.
                            This is most likely not correct.

                     Unix   The directories "/tmp", "/var/tmp", and "/usr/tmp"
                            are tried in that order.

       The algorithm utilized is that used in the Python standard library.

       ::::fileutil::::tempfile ?prefix?
              The command generates a temporary file name suitable for writing
              to,  and the associated file.  The file name will be unique, and
              the file will be writable and contained in the appropriate  sys-
              tem  specific  temp  directory.  The  name  of  the file will be
              returned as the result of the command.

              The code was taken from  http://wiki.tcl.tk/772,  attributed  to
              Igor Volobouev and anon.

KEYWORDS
       file utilities, grep, temp file, touch, type



fileutil                             1.6.1                         fileutil(n)
Darwin Mac OS X man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™