기존 광학 드라이브를 모두 나열하는 방법은 무엇입니까?

기존 광학 드라이브를 모두 나열하는 방법은 무엇입니까?

설치된 모든 광학 드라이브를 나열하는 방법우데브아니면 다른 핵심 기반 도구가 있습니까(Perl도 좋을 것입니다)?

추신: 이 명령을 알고 있지만 wodim --devices환영받지 못하는 종속성입니다.

답변1

Perl을 좋아한다면 이 예제 코드확립된이 문제는 CPAN에서 해결될 수 있습니다. 또한 종속성이 낮습니다. 당신에게 필요한 라이브러리는장비-Cdio.

use strict;

BEGIN {
    chdir 'example' if -d 'example';
    use lib '../lib';
    eval "use blib";  # if we fail keep going - maybe we have installed Cdio
}

use Device::Cdio;
use Device::Cdio::Device;
use Device::Cdio::Track;
use vars qw($0 $program $pause %opts);

sub print_drive_class($$$) {
    my ($msg, $bitmask, $any) = @_;
    my @cd_drives = Device::Cdio::get_devices_with_cap($bitmask, $any);
    print "$msg...\n";
    foreach my $drive (@cd_drives) {
    print "Drive $drive\n";
    }
    print "-----\n";
}
my @cd_drives = Device::Cdio::get_devices($perlcdio::DRIVER_DEVICE);
foreach my $drive (@cd_drives) {
    print "Drive $drive\n";
}
print "-----\n";
print_drive_class("All CD-ROM drives (again)", $perlcdio::FS_MATCH_ALL, 0);

관련 정보