plan9fox/rc/bin/sysinfo

65 lines
1.3 KiB
Bash
Executable file

#!/bin/rc
rfork e
fn logprog{
echo % `{echo $"* | sed 's/#/''#''/g'}
$*
echo
}
fn print{
echo '% cd ''#ec''; for(i in *){echo $i ''='' `{cat $i}}'
cd '#ec'; for(i in *){echo $i '=' `{cat $i}}
echo
logprog cat '#P/archctl'
logprog cat '#P/irqalloc'
logprog cat '#P/ioalloc'
logprog cat '#c/config'
logprog cat '#c/swap'
logprog cat '#c/sysstat'
logprog awk '/^Plan 9$/{p=1}
/^init: starting/{exit}
{if(p)print}' '#c/kmesg'
logprog pci -v
logprog aux/icanhasmsi
logprog aux/pcmcia
logprog cat '#u/usb/ctl'
logprog cat '#S/sdctl'
for(i in '#S'/sd[A-Z][0-9]*/ctl)
logprog cat $i
for(i in '#l0/ether0' '#l1/ether1' '#l2/ether2' '#l3/ether3'){
if(test -e $i){
logprog cat $i/addr
logprog cat $i/stats
logprog cat $i/ifstats
}
}
logprog cat '#v/vgactl'
echo '@{rfork n; aux/realemu; aux/vga -p}'
@{rfork n; aux/realemu; aux/vga -p}
logprog xd -x1 '#r/nvram'
logprog cat '#A/audiostat'
logprog cat '#A/volume'
logprog cat /mnt/apm/ctl
}
fn post{
file=/tmp/sysinfo.$user.$pid
print >$file >[2=1]
@{
rfork n
webfs
hpost -u http://sysinfo.9front.org -p / a_body@$file submit:submit fake:fake a_func:add_post url: |
grep -e '\/body\"' |
sed 1q | sed 's/^.*href=\"//g; s/body\".*$/body/g; s/^/http:\/\/sysinfo.9front.org/g'
rm -f $file
}
}
switch($1){
case -p
post
case *
print
}