Enviado em 25/04/2017 - 17:41h
Pessoas .. tô afim de fazer um menu multiplas escolhas com o zenity mas pra variar não sei como fazer, até vi uns exemplos de checklist na net mais mesmo assim fiquei voando de como colocar as ações de acordo com as opçõesEnviado em 25/04/2017 - 19:14h
A princípio tenho isso aqui#!/bin/bash zenity --text="Menus de Scripts" --list --checklist \ --column "E/D" --column "Ações" \ FALSE Ação 1 \ FALSE Ação 2 \ FALSE Ação 3
Enviado em 25/04/2017 - 21:55h
#!/bin/bash zenity --text="Menus de Scripts" --list --checklist \ --column "E/D" --column "Ações" \ FALSE Ação 1 \ FALSE Ação 2 \ FALSE Ação 3
Enviado em 25/04/2017 - 22:10h
#!/bin/bash data=`date +%H:%M:%S` selection=$(zenity --list --checklist \ --title='Configurações' --column=E/D --column=Ações \ FALSE "Ação 1" \ FALSE "Ação 2" \ FALSE "Ação 3") [[ $selection = "Ação 1"* ]] && echo "Você escolheu a ação A as $data" >> ~/Público/teste.txt [[ $selection = *"Ação 2"* ]] && echo "Você escolheu a ação B as $data" >> ~/Público/teste.txt [[ $selection = *"Ação 3" ]] && echo "Você escolheu a ação C as $data" >> ~/Público/teste.txt
mauricio@debian:~$ ./Público/zenity_menu.sh Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Enviado em 25/04/2017 - 22:33h
Você pode tirar essa mensagem redirecionando a saída de erro:zenity --info --text="sem mensagem" 2>> /dev/null
funcao_trocar () { sed -i "s/meia dúzia/6/" arquivo_com_meia_duzia zenity --info --text="Trocado 6 por meia dúzia com sucesso." } funcao_escrever () { cat arquivo_mauricio | grep Maurício if [ $? = 0 ]; then zenity --info --text="Maurício já está escrito no arquivo. " else echo Maurício >> arquivo_mauricio zenity --info --text="Foi escrito Maurício no arquivo. " fi } funcao_remover () { rm arquivo_temp zenity --info --text="Arquivo foi removido." } checklist=$(zenity --list --text="Menus de Scripts" --column "Ações" \ "Trocar 6 por meia dúzia" \ "Escrever Maurício" \ "Remove ARQUIVO") case "$checklist" in "Trocar 6 por meia dúzia" ) funcao_trocar ;; "Escrever Maurício" ) funcao_escrever ;; "Remove ARQUIVO" ) funcao_remover ;; "*" ) exit ;; esac
checklist=$(zenity --list --text="Menus de Scripts" --checklist --column "E/D" --column "Ações" \ FALSE "script_meiaduzia" \ FALSE "script_mauricio" \ FALSE "script_remover" --separator=":") ./$(echo "$checklist" | cut -d : -f1) ./$(echo "$checklist" | cut -d : -f2) ./$(echo "$checklist" | cut -d : -f3)
Enviado em 25/04/2017 - 22:42h
zenity --info --text="sem mensagem" 2>> /dev/null
Enviado em 26/04/2017 - 11:00h
Dúvida ... o menu está sendo executado por um link simbólico na área de trabalho, dentre as ações do menus, algumas terão que ser executadas como ROOT e outras não ... qual a solução para essa questão ??? ou seja ... na primeira ação q deva ser feita como ROOT o Zenity pedir senha sudo.Enviado em 26/04/2017 - 14:46h
Enviado em 26/04/2017 - 15:25h
mauricio@debian:~$ ls /home mauricio testeROOT1.txt testeROOT2.txt mauricio@debian:~$ cat /home/testeROOT1.txt mauricio@debian:~$ cat /home/testeROOT2.txt
mauricio@debian:~$ ./Público/zenity_menu.sh Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. ./Público/zenity_menu.sh: line 10: /home/testeROOT1.txt: Permissão negada ./Público/zenity_menu.sh: line 11: /home/testeROOT2.txt: Permissão negada
#!/bin/bash data=`date +%H:%M:%S` selection=$(zenity --list --checklist \ --title='Configurações' --column=E/D --column=Ações \ FALSE "Ação 1" \ FALSE "Ação 2" \ FALSE "Ação 3") [[ $selection = "Ação 1"* ]] && echo "Você escolheu a ação A as $data" >> ~/Público/teste.txt [[ $selection = *"Ação 2"* ]] && gksu echo "Você escolheu a ação B as $data" >> /home/testeROOT1.txt [[ $selection = *"Ação 3" ]] && gksu echo "Você escolheu a ação C as $data" >> /home/testeROOT2.txt
#!/bin/bash if [ "`id -u`" != "0" ] ; then gksu $0 exit fi data=`date +%H:%M:%S` selection=$(zenity --list --checklist \ --title='Configurações' --column=E/D --column=Ações \ FALSE "Ação 1" \ FALSE "Ação 2" \ FALSE "Ação 3") [[ $selection = "Ação 1"* ]] && echo "Você escolheu a ação B as $data" >> ~/Público/teste.txt [[ $selection = *"Ação 2"* ]] && echo "Você escolheu a ação B as $data" >> /home/testeROOT1.txt [[ $selection = *"Ação 3" ]] && echo "Você escolheu a ação C as $data" >> /home/testeROOT2.txt
mauricio@debian:~$ cat /home/testeROOT1.txt Você escolheu a ação B as 15:23:54 mauricio@debian:~$ cat /home/testeROOT2.txt Você escolheu a ação C as 15:23:54 mauricio@debian:~$ cat ~/Público/teste.txt mauricio@debian:~$
Enviado em 26/04/2017 - 22:43h
SUDO=$(zenity --password --title="Digite a senha de administrador" 2>> /dev/null) echo -e "\n$SUDO\n" | sudo -S ./script
tux-gpt - Assistente de IA para o Terminal
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04
Os empreguim de meu Deus estão cada vez mais tecnológicos (0)
Alguém poderia me ajudar a escolher peças pra montar um desktop? (28)
Meu PC perde o boot de várias distros Linux após ficar desligado (4)