Script em Xdialog para montar / desmontar dispositivos
Publicado por Sandro Marcell 29/12/2006
[ Hits: 7.211 ]
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
Atualizador de sistema multipla escolha
dep-info - verificar se o programa está instalado no sistema
Instalar e remover o Microsoft Visual Studio Code
Script de instalação do Hamachi
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
O widget do Plasma 6 Área de Notificação
[Resolvido] Algo deu errado ao abrir seu perfil
Quando vocês pararam de testar distros? (14)
Problema com som no laptop (3)
Não estou conseguindo fazer funcionar meu Postfix na versão 2.4 no Deb... (2)









