criar automaticamente um link simbólico para o DVD atualmente inserido

3

É possível usar o applescript ou um script de shell para criar automaticamente uma referência ao DVD atualmente inserido? Se eu aparecer o DVD Midsomer Murders e inserir Star Trek, o Wrath of Khan, o caminho muda de, por exemplo, / Volumes / MM_SET_17_DISC_1 para / Volumes / ST2_DISC1

O Finder suporta o lançamento de um applescript quando um disco é inserido, portanto, desejo vincular automaticamente o nome do volume a algo como / Volumes / DVDFOLDER

Obrigado!

    
por alphablender 14.07.2012 / 23:10

1 resposta

0

Como você notou, o nome do volume exibido pelo OS X muda a cada DVD que você insere, o que torna o texto simbólico irrelevante. No entanto, no nível mais baixo de dispositivos BSD, a unidade de DVD tem um identificador independente dos nomes de volume - seu nome de arquivo no /dev pseudo- sistema de arquivos , onde você encontrará todas as unidades como /dev/disk# (para o nível do disco raiz) e /dev/disk#s# (para o nível da partição do disco) - “#” sendo um dígito.

O OS X fornece o diskutil utility para manipular unidades por meio dos nomes de arquivos do dispositivo. Insira um DVD e faça

diskutil list

para descobrir qual nome de arquivo de dispositivo sua unidade de DVD possui (para o exemplo, digamos que é disk3 ). Quando você souber disso,

diskutil info disk3

mostrará a você todas as informações sobre o disco - notavelmente seu nome de volume e, melhor ainda, seu caminho completo do ponto de montagem, que você pode extrair com um regex e canalizar para ln :

ln -fhs "$(diskutil info disk3 | sed -Ene 's#[[:space:]]*Mount Point:[[:space:]]+(/Volumes/.+)##p)" /path/to/DVD

você obterá um link simbólico para o volume do DVD chamado "DVD" em /path/to . Você pode envolvê-lo em um aplicativo AppleScript ou AppleScript ou Automator e configurá-lo para ser executado sempre que um novo DVD de vídeo for inserido (observe que isso deixará um vínculo simbólico inválido quando você ejetar o disco).

    
por 22.07.2012 / 19:08