| #!/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 |