http://qs321.pair.com?node_id=726512


in reply to Detect Plugged USB Flash Drive / CD in CDROM Drive

Hi! I tried to extract messages from the etc/mtab. Here's what I did, its very simple. I'm just beggining to learn RegEx, please bear with me hehe..
sub scan_cddvd { # mtab file /etc/mtab # cd/dvd signature /dev/sr0 open(MYINPUTFILE, "</etc/mtab"); my $cddvd_path = 'not found'; while(<MYINPUTFILE>){ my($line) = $_; chomp($line); if($line =~ m/^\/dev\/sr/){ print "FOUND CD/DVD\n"; print $line , "\n"; #$line =~ /(\/media\/.*)\ /; $line =~ /(\/media\/\S+)\s+/; my $newline = $1; print $newline , "\n"; while($newline =~ m/\\040/){ $newline =~ s/\\040/ /; } print $newline , "\n"; $cddvd_path = $newline } } close MYINPUTFILE; return $cddvd_path; }
I made a timer of some sort and calls this function to determine if a CD / DVD is inside the drive.works pretty ok. :D hehe. I would be applying the same concept with usb flash drives. Instead of looking for /dev/sr, I'd be looking for /dev/sdb hehe.hope it would work just fine.
Mabuhay Civil Engineers! :D