Script em Xdialog para montar / desmontar dispositivos
Publicado por Sandro Marcell 29/12/2006
[ Hits: 7.003 ]
Homepage: http://sanmarcell.wordpress.com
Escrevi este simples script com o intuito de facilitar a montagem/desmontagem do CD-ROM e disquete no meu Slackware. Ele monta o dispositivo escolhido, mostrando uma barra de progresso e depois abre o gerenciador de arquivos e mostra todo o conteúdo do dispositivo.
ATENÇÃO: Os caminhos/dispositivos descritos no script são referentes a distribuição Slackware, se você usa uma distribuição diferente, faça as modificações necessárias. Verifique também as permissões de acesso aos dispositivos.
#!/bin/bash # Script escrito por: SANDRO MARCELL PADILHA BARBOSA # E-mail: sandro_marcell@yahoo.com.br # Slackware GNU/Linux 10.1 # É necessário o Xdialog-2.1.2 # SEU_GERENCIADOR_DE_ARQUIVOS = substitir pelo seu gerenciador favorito! Ex.: rox /mnt/floppy& ou nautilus /mnt/cdrom& Principal () { OPÇÃO=$(Xdialog --stdout --title "Monta_X" --no-tags --menu "O QUE VOCÊ DESEJA FAZER?" 0 0 0 \ 1 "Montar CD-ROM" \ 2 "Montar Disquete" \ 3 "Desmontar CD-ROM" \ 4 "Desmontar Disquete" \ 5 "Sair") case $OPÇÃO in 1) Montar_CDROM ;; 2) Montar_Disquete ;; 3) Desmontar_CDROM ;; 4) Desmontar_Disquete ;; 5) exit ; clear ;; esac } CDROM=/mnt/cdrom DISQUETE=/mnt/floppy Verificando_CDROM () { cdr=$(grep -l $CDROM /etc/mtab) if [ $? = '0' ]; then Xdialog --title "Monta_X" --msgbox "O CD-ROM já está montado!" 6 40 exit 1 fi } Verificando_Disquete () { dqt=$( grep -l $DISQUETE /etc/mtab ) if [ $? = '0' ]; then Xdialog --title "Monta_X" --msgbox "O disquete já está montado!" 6 40 exit 1 fi } Rodando() { ps $1 | grep $1 >/dev/null; } PERCENTO=0 Montar_CDROM () { Verificando_CDROM mount /dev/cdrom& MONTAGEM=$! ( while Rodando $MONTAGEM do PERCENTO=$[ $PERCENTO+1 ] echo "$PERCENTO" sleep 0.5 done echo "100" ) | Xdialog --title "Monta_X" --gauge "Montando CD-ROM! Aguarde..." 6 40 0 Xdialog --title "Monta_X" --msgbox "CD-ROM montado!" 6 40 SEU_GERENCIADOR_DE_ARQUIVOS /mnt/cdrom& exit } Montar_Disquete () { Verificando_Disquete mount /dev/fd0& MONTAGEM=$! ( while Rodando $MONTAGEM do PERCENTO=$[ $PERCENTO+1 ] echo "$PERCENTO" sleep 0.5 done echo "100" ) | Xdialog --title "Monta_X" --gauge "Montando disquete! Aguarde..." 6 40 0 Xdialog --title "Monta_X" --msgbox "Disquete montado!" 6 40 SEU_GERENCIADOR_DE_ARQUIVOS /mnt/floppy& exit } Desmontar_CDROM () { Xdialog --title "Monta_X" --no-buttons --infobox "Desmontando CD-ROM! Aguarde..." 6 50 umount /dev/cdrom if [ $? = "0" ]; then eject Xdialog --title "Monta_X" --msgbox "CD-ROM desmontado!" 6 40 else Xdialog --title "Monta_X" --msgbox "Dispositivo ocupado ou não montado!" 6 40 Principal fi } Desmontar_Disquete () { Xdialog --title "Monta_X" --no-buttons --infobox "Desmontando disquete! Aguarde..." 6 50 umount /dev/fd0 if [ $? = "0" ]; then Xdialog --title "Monta_X" --msgbox "Disquete desmontado!" 6 40 else Xdialog --title "Monta_X" --msgbox "Dispositivo ocupado ou não montado!" 6 40 Principal fi } Principal exit
Backup em HD Externa com Rsync
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como gerar um podcast a partir de um livro em PDF
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Como Definir o Painel Principal em Múltiplos Monitores no Linux Mint
Minecraft Launcher para Arch Linux
Instalar o Apache, MySQL e PHP no Oracle Linux 8
Resolvendo o erro "libQt6Widgets.so.6: cannot open shared object file" no Linux
aplicativos criados com webapp-manager não aparecem no menu do xfce (0)
Como bloquear e desbloquear papel de parede no Ubuntu 24.04 (1)