#!/usr/local/plan9/bin/rc if(! ~ $#* 2){ echo usage: netfilestat system path >[1=2] exit usage } f=dostat . netfilelib.rc $1 fn dostat { echo cd $2 | runsftp $1 if(9 test -e $t.sftp -a ! -s $t.sftp){ echo directory exit 0 } if(9 grep -s 'Can''t change directory|is not a directory' $t.sftp){ echo file exit 0 } if(9 grep -s 'Couldn''t stat remote file|such file' $t.sftp){ echo nonexistent exit 0 } { echo unknown error: sed 's/^/ /' $t.sftp } >[1=2] exit 0 } fn dostat9p { if(! 9p ls -ld $1/$2 >$t >[2]/dev/null){ echo nonexistent exit 0 } if(9 grep -s '^d' $t){ echo directory exit 0 } echo file exit 0 } $f $1 $2