Abrindo CD-ROM com código bash

9

Copiei esse monte de código de um videoclipe engraçado sobre Como um programador balança seu bebê . O código é o seguinte:

#!/bin/bash

while [ l=l ]
do
   #eject cdrom
   eject    
   #pull cdrom track back in
   eject -t
done

Mas isso não funciona para mim, quando o executo com o comando, sh baby_rocker.shele executa o código e gera a seguinte mensagem, eject: unable to find or open device for: "cdrom"mesmo que eu tenha um dispositivo de CD-ROM no meu computador.

Como posso fazê-lo funcionar?

Bakhtiyor
fonte
2
O conselho do Ubuntu e dos pais, em uma única pergunta, deve ser votado
Allan
@Jorge. Separei a resposta.
Bakhtiyor

Respostas:

9

Você precisa encontrar o nome do seu dispositivo cdrom (que por erro não é / dev / cdrom). Para descobrir o nome do dispositivo cdrom no terminal, execute:

sudo lshw -C disk

No caso de um dispositivo que começa com "* -cdrom", o nome do dispositivo é listado no campo "nome lógico:". Então você precisa anexar o nome do dispositivo aos comandos de ejeção no seu script, por exemplo:

eject /dev/cdrom1
João Pinto
fonte
2

Graças à resposta de João Pinto , mudei o código e agora funciona. Portanto, se você decidir balançar seu bebê com o CD-ROM, poderá alterar o código conforme abaixo e aproveitar sua funcionalidade:

#!/bin/bash

while [ l=l ]
do
   #eject cdrom
   eject /dev/cdrom1
   #pull cdrom track back in
   eject -t /dev/cdrom1
done

Observe que esse /dev/cdrom1é o nome lógico do meu dispositivo de CD-ROM. Você precisa executar o sudo lshw -C diskcomando para ver o nome lógico do seu CD-ROM.

Bakhtiyor
fonte