#!/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
b 9 0 md0-15
c 10 144 nvram
c 9 0 st0-15