NETFILES(1)                                           NETFILES(1)

     NAME
          Netfiles, netfileget, netfileput, netfilestat - network file
          access inside acme

     SYNOPSIS
          Netfiles

          netfileget [ -d ] system path

          netfileput system path

          netfilestat system path

     DESCRIPTION
          Netfiles presents remote file systems in acme(4) windows.
          Each window is named /n/system/path and displays the con-
          tents of path on system.

          Netfiles reads names of windows to create from the plumbing
          channel netfileedit (see plumber(4) and the example section
          below).  In a netfiles-controlled window, Get, Put, and but-
          ton 3 loads work as in normal acme windows.  External com-
          mands executed with button 2 run in the directory in which
          acme was started.

          Netfiles uses the helper programs netfileget, netfileput,
          and netfilestat to access the remote file systems.  The
          three first check to see if system is a service in the cur-
          rent name space (see intro(4)). If so, they use 9p(1) to
          access it.  Otherwise, they assume that the system is a net-
          work name and use ssh(1)'s sftp to access it.

          Netfileget prints the contents of the named path to standard
          output.  If the -d option is given, then netfileget prints a
          single-column listing of path, which must be a directory.
          Directories in the listing have `/' appended to their names.

          Netfileput writes its standard input to the named path.

          Netfilestat prints the file type of path, one of
          nonexistent, directory, or file.

     EXAMPLES
          The following plumbing rule (see plumb(7)) passes /n/ paths
          to Netfiles, starting it if necessary.

               # /n/ paths go to simulator in acme
               kind is text
               data matches '[a-zA-Z0-9_\-./]+('$addr')?'
               data matches '(/n/[a-zA-Z0-9_\-./]+)('$addr')?'

     NETFILES(1)                                           NETFILES(1)

               plumb to netfileedit
               plumb client Netfiles

     SOURCE
          /src/cmd/netfiles

     SEE ALSO
          9p(1), ssh(1), ssh-agent(1), intro(4), acme(4), factotum(4),

     BUGS
          Netfiles depends on sftpcache(1), which only works with
          OpenSSH versions 4.3 and earlier; later versions do not
          print the sftp> prompt frequently enough.