View difference between Paste ID: ehWALTs5 and 1CkceYsb
SHOW: | | - or go back to the newest paste.
1
#!/bin/bash
2
3
# SCRIPT FEITO PARA SER USADO NAS AÇÕES PERSONALISADAS DO THUNAR.
4
# DEPENDE DO BASH, ZENITY E MP3GAIN
5
6
7
if [ -n "$1" ]; then
8
	arquivo="/home/$USER/.enviarParaMP4-pontoDeMontagem"
9
10
# VERIFICA SE O ARQUIVO DE PONTO DE MONTAGEM EXISTE.
11
	if [ -f "$arquivo" ]; then
12
		pontoDeMontagem=$(cat "$arquivo")
13
	fi
14
# -----------------------------------------------
15
16
# VERIFICA SE O MP4 ESTÁ MONTADO.
17
	if [ -n "$pontoDeMontagem" ]; then
18
		if [ -d "$pontoDeMontagem" ]; then
19
			nok=""
20
		else
21
			nok="nok"
22
			[ -f "$arquivo" ]; rm "$arquivo"
23
		fi
24
	else
25
		nok="nok"
26
		[ -f "$arquivo" ]; rm "$arquivo"
27
	fi
28
# -----------------------------------------------
29
30
# SE NÃO HOUVER O PONTO DE MONTAGEM SALVA NO $ARQUIVO.
31
	if [ "$nok" == "nok" ]; then
32
		# Os nomes do seu dispositivo pode ser verificado através do "dmesg | grep -i scsi"
33
		nome1MP4="ACTIONS  HS USB FlashDisk 2.00 PQ: 0 ANSI: 0 CCS"
34
		nome2MP4="Attached SCSI removable disk"
35
		# ---------------------------------------------------------------------------------
36
37
		dispositivo="/home/$USER/.dispositivo"
38
		# A linha abaixo pode ser comentada se você não quiser tempo para verificar se o MP4 está montado.
39-
#		zenity --info --title="Aviso!" --text=" Por favor,\nantes de continuar,\nconfira se o MP4 está devidamente montado.\n Grato."
39+
		zenity --info --title="Aviso!" --text=" Por favor,\nantes de continuar,\nconfira se o MP4 está devidamente montado.\n Grato."
40
		# ---------------------------------------------------------------------------------
41
		numeroDoDispositivo=$(dmesg | grep -i "$nome1MP4" | sed -e "s/^.\{20\}\([0-9:]\{8\}\).*/\1/" | tail -n1)
42
		if [ -n "$numeroDoDispositivo" ]; then
43
			dmesg | grep -i "$numeroDoDispositivo" | grep -i "$nome2MP4" | sed -e "s/^.\{28\}\([a-z]\{3\}\).*/\1/" | tail -n1 >"$dispositivo"
44
			pontoDeMontagem=$(mount | grep -i "`cat /home/$USER/.dispositivo`" | sed -e "s/^.\{12\}\([0-9a-zA-Z/ -]*\) type.*/\1/")
45-
			if [ -n "$pontoDeMontagem" ]; then
45+
			if [-n $pontoDeMontagem ]; then
46
				echo $pontoDeMontagem>"$arquivo"
47
			else
48-
				zenity --info --title="Erro!" --text="Infelizmente o dispositivo não foi encontrado."
48+
				zenity --info --title="Erro!" --text="Dispositivo não encontrado."
49
			fi
50
			rm "$dispositivo"
51
		else
52-
			zenity --info --title="Erro!" --text="Infelizmente o dispositivo não foi encontrado."
52+
			zenity --info --title="Erro!" --text="Dispositivo não encontrado."
53
		fi
54
	fi
55
# -----------------------------------------------
56
57
	if [ -d "$pontoDeMontagem" ]; then
58
59
		listaParaTransferir="/home/$USER/.listaParaTransferir"
60
61
# CRIA A LISTA DE ARQUIVOS A TRANSFERIR.
62-
#		echo "$*" | sed -e "s/\.mp3 /\.mp3\n/g">>"$listaParaTransferir"
62+
		echo "$*" | sed -e "s/\.mp3 /\.mp3\n/g">>"$listaParaTransferir"
63-
		echo "$*" | sed -e "s/ \//\n\//g" | grep ".mp3">>"$listaParaTransferir"
63+
64
65
# CRIA O DIRETÓRIO DE MÚSICAS NO MP4, SE ELE NÃO EXISTIR.
66
		mkdir -p "$pontoDeMontagem/musicas"
67
# -----------------------------------------------
68
69
# COPIA AS MÚSICAS PARA O MP4 E REALIZA A NORMALIZAÇÃO DE VOLUME COM O MP3GAIN
70
		while read mp3; do
71
			musicaAtual=$(echo "$mp3" | sed -e "s/^\/media\/[a-zA-Z0-9 /áÁàÀãÃâÂéÉêÊíÍóÓõÕôÔúÚçÇ_-]*\/\([a-zA-Z0-9 áÁàÀãÃâÂéÉêÊíÍóÓõÕôÔúÚçÇ_-]*\.mp3\)/\1/")
72-
			musicaAtual=$(echo "$mp3" | sed -e "s/^\/[[:alpha:][:digit:][:punct:] ]*\/\([[:alpha:][:digit:][:punct:] ]*\.mp3\)/\1/")
72+
73
				cp "$mp3" "$pontoDeMontagem/musicas"
74-
				[ ! -f "$mp3" ]; cp "$mp3" "$pontoDeMontagem/musicas"
74+
75
			fi
76
		done < "$listaParaTransferir"
77
# -----------------------------------------------
78
79
# REMOVE A LISTA DE TRANSFERÊNCIA.
80
		rm "$listaParaTransferir"
81
# -----------------------------------------------
82
83
# AVISA QUE O PROCESSO FOI CONCLUÍDO COM SUCESSO.
84
 		zenity --info --title="Transferência finalizada!" --text=" Os arquivos selecionados foram\ntrasnferidos e normalizados com sucesso!"
85
# -----------------------------------------------
86
	fi
87
else
88
# SE NÃO HOUVER ARQUIVO DE ENTRADA, AVISA.
89
	zenity --info --title="Erro!" --text="Falta o arquivo de entrada."
90
# -----------------------------------------------
91
fi