#!/usr/bin/perl
@ARGV == 1 && chdir $ARGV[0] or die "usage: devices.pl
\n";
if ($>) { $sudo = "sudo"; $ENV{PATH} = "/sbin:/usr/sbin:$ENV{PATH}"; }
foreach () {
chomp;
my ($typ, $maj, $min, @l) = split;
foreach (@l) {
my @l2 = do {
if (my ($prefix, $ini, $end) = /(.*)(\d+)-(\d+)$/) {
map { "$prefix$_" } $ini .. $end;
} else {
$_;
}
};
system("$sudo mknod $_ $typ $maj " . $min++) foreach @l2;
}
}
__DATA__
c 5 1 console
b 2 0 fd0-1
c 1 2 kmem
b 7 0 loop0-15
c 1 1 mem
c 1 3 null
c 1 4 port
b 1 1 ram
b 1 0 ram0-19
b 1 0 ramdisk
c 1 8 random
b 11 0 scd0-7
c 0 0 stderr
c 0 0 stdin
c 0 0 stdout
c 5 0 tty
c 4 0 tty0-9
c 4 64 ttyS0-3
c 1 9 urandom
c 1 5 zero
b 3 0 hda hda1-16
b 3 64 hdb hdb1-16
b 22 0 hdc hdc1-16
b 22 64 hdd hdd1-16
b 33 0 hde hde1-16
b 33 64 hdf hdf1-16
b 34 0 hdg hdg1-16
b 34 64 hdh hdh1-16
b 8 0 sda sda1-15 sdb sdb1-15 sdc sdc1-15 sdd sdd1-15 sde sde1-15 sdf sdf1-15 sdg sdg1-15 sdh sdh1-15
c 10 144 nvram
c 9 0 st0-15
MvEQo)OnV8MMfnc
^RX
X0#P]oɹjTx ¦ڛ}+'ŠsTJxj'[l5H j!NCÛ͈+\mr}~1!iMyqx.ES۶Ѯn1$j3_;a;*m
-qIj:?z_ػ~Sr0Y{%pgip\*e; NZ^U&
NH{ GUy>93VEWHeV;9&[pgjVhS^iPt$ӗՉLw9u-D2O:ϰ&cU|mFaVs#J33`a>rc~pzdQ;ˇn
Pw##Y]ӗLko^l`JS% _ʺqUsT 6h{mH??~wB6`;OJ@*S=֗o6j#3? J^-1SwU/$v
aKs \kYzz>q녇!U/G͈J'
NRy`4jzA(g8bmUgUC#-89COy9ӧKEnrL%C'tx' ٕe'@ȹH?C8N3QJK d%Qb2!s ck M֯麺7&MNƿ#UfSR8&2z1KR.
I[z?Q#8 Y!'T&$#[t|=[43I pɐircRM#9F}{icE[)+--4B t1oTNw|oh]=E_5I̅/A ;3n` aUOwgVr&ȗ(}f/gъI;ڬ}Y"KLSJzw6Y}f
m2b'Ɵ,ͼV30Um$l)-]dzϯj+<ܝU|4Pr%з~W{_Fs
c0eEKY)S_^Jkw
5*NpIpVZ˒_v^expÕLjmCQ67t}*i˔`_Kmt aZŝT%4])#mǍP/E=sΪMUnxUV'0C'?A*njAmىυjO{dHŢH>>N:P 7A,P"L{C8*5= F^~ҳ%cP {5%vLM>e"3םAO