Files
plan9port/man/man1/netfiles.1
Dmitri Vereshchagin 10564b1175 tmac/tmac.an: define .MR in a groff compatible way
groff 1.23.0 added .MR to its -man macro package.  The NEWS file states
that the inclusion of the macro "was prompted by its introduction to
Plan 9 from User Space's troff in August 2020."  From d32deab it seems
that the name for Plan 9 from User Space's implementation was suggested
by groff maintainer G. Brandon Robinson.

Not sure if the intention was to make these definitions compatible, but
it would be nice if they were.

Currently, Plan 9 from User Space's .MR expects its second argument to
be parenthesized.  groff's .MR does not.  This results in extra
parentheses appearing in manual references when viewing Plan 9 from User
Space's manual pages on a system using groff.
2025-07-27 09:58:50 -04:00

136 lines
2.2 KiB
Groff

.TH NETFILES 1
.SH NAME
Netfiles, netfileget, netfileput, netfilestat \- network file access inside acme
.SH SYNOPSIS
.B Netfiles
.PP
.B netfileget
[
.B -d
]
.I system
.I path
.PP
.B netfileput
.I system
.I path
.PP
.B netfilestat
.I system
.I path
.SH DESCRIPTION
.B Netfiles
presents remote file systems in
.MR acme 4
windows.
Each window is named
.BI /n/ system / path
and displays the contents of
.I path
on
.IR system .
.PP
.I Netfiles
reads names of windows to create from the
plumbing channel
.B netfileedit
(see
.MR plumber 4
and the example section below).
In a
.IR netfiles -controlled
window,
.BR Get ,
.BR Put ,
and
button 3 loads work as in normal acme windows.
External commands executed with button 2
run in the directory in which
.I acme
was started.
.PP
.I Netfiles
uses the helper programs
.IR netfileget ,
.IR netfileput ,
and
.I netfilestat
to access the remote file systems.
The three first check to see if
.I system
is a service in the current name space
(see
.MR intro 4 ).
If so, they use
.MR 9p 1
to access it.
Otherwise, they assume that the system is a network name
and use
.MR ssh 1 's
.I sftp
to access it.
.PP
.I Netfileget
prints the contents of the named
.I path
to standard output.
If the
.B -d
option is given, then
.I netfileget
prints a single-column listing of
.IR path ,
which must be a directory.
Directories in the listing have
.L /
appended to their names.
.PP
.I Netfileput
writes its standard input to the named
.IR path .
.PP
.I Netfilestat
prints the file type of
.IR path ,
one of
.BR nonexistent ,
.BR directory ,
or
.BR file .
.SH EXAMPLES
The following plumbing rule
(see
.MR plumb 7 )
passes
.B /n/
paths to
.IR Netfiles ,
starting it if necessary.
.IP
.EX
# /n/ paths go to simulator in acme
kind is text
data matches '[a-zA-Z0-9_\e-./]+('$addr')?'
data matches '(/n/[a-zA-Z0-9_\e-./]+)('$addr')?'
plumb to netfileedit
plumb client Netfiles
.EE
.SH SOURCE
.B \*9/src/cmd/netfiles
.SH SEE ALSO
.MR 9p 1 ,
.MR ssh 1 ,
.MR ssh-agent 1 ,
.MR intro 4 ,
.MR acme 4 ,
.MR factotum 4 ,
.HR http://v9fs.sf.net
.SH BUGS
.I Netfiles
depends on
.MR sftpcache 1 ,
which only works with OpenSSH versions 4.3 and earlier;
later versions do not print the
.B sftp>
prompt frequently enough.