Netfiles, netfileget, netfileput, netfilestat – network file access
netfileget [ −d ] system path
netfileput system path
netfilestat system path|
Netfiles presents remote file systems in acme(4) windows. Each
window is named /n/system/path and displays the contents of path
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 button 3 loads work
as in normal acme windows. External commands 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 current name space
(see intro(4)). If so, they use 9p(1) to access it. Otherwise,
they assume that the system is a network 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.|
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')?'
plumb to netfileedit
plumb client Netfiles
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.|