9P(1)                                                       9P(1)

          9p - read and write files on a 9P server

          9p [ options ] read path
          9p [ options ] readfd path

          9p [ options ] write [ -l ] path
          9p [ options ] writefd path

          9p [ options ] stat path

          9p [ options ] rdwr path

          9p [ options ] ls [ -dl ] path...

          9p is a trivial 9P client that can access a single file on a
          9P server.  It can be useful for manual interaction with a
          9P server or for accessing simple 9P services from within
          shell scripts.  The common options are:

          -a addr
               dial the server at addr

          -A aname
               attach to the file system named aname

          -n   mount without authentication

          The first argument is a command, one of:

          read print the contents of path to standard output

               write data on standard input to path; the -l option
               causes write to write one line at a time

          readfd, writefd
               like read and write but use openfd(9p) instead of open;
               this masks errors and is mainly useful for debugging
               the implementation of openfd

          stat execute stat (9p) on path and print the result

          rdwr Open path for reading and writing.  Then repeat until
               end-of-file on standard input: copy a line from the
               file to standard output, copy a line from standard
               input to the file.  Print errors, but don't give up.
               Rdwr is useful for interacting with servers like

     Page 1                       Plan 9            (printed 10/20/21)

     9P(1)                                                       9P(1)


          ls   Print a directory listing in the format of ls(1). The
               -d and -l flags have the same meaning as in ls.

          9p dials address to connect to the 9P server.  If the -a
          option is not given, 9p requires the path to be of the form
          service/subpath; it connects to the Unix domain socket
          service in the name space directory (see intro(4)) and then
          accesses subpath.

          To update plumber(4)'s copy of your plumbing rules after
          editing $HOME/lib/plumbing:

               cat $HOME/lib/plumbing | 9p write plumb/rules

          To display the contents of the current acme(4) window:

               9p read acme/$winid/body


          intro(4), intro(9p), 9pclient(3)

     Page 2                       Plan 9            (printed 10/20/21)