Autor Tópico: Vamos criar scripts úteis aqui!?  (Lida 42027 vezes)

Offline Alyscom

  • Usuário Ubuntu
  • *
  • Mensagens: 774
  • Apenas me dê o feijão!
    • Ver perfil
Vamos criar scripts úteis aqui!?
« Online: 11 de Dezembro de 2009, 10:32 »
A intenção é essa mesmo, vamos postar aqui alguns scripts que poderão substituir comandos longos que agente costuma usar no dia-a-dia.

Para criar um script é simples, aqui deixo uma dicá.
Os nomes ficam por conta própria.

Crie um documento de texto, nele você digitara o nome que quiser e com a extensão ".sh" na sua home/!

Então para começar, colocarei dentro do documento de texto apenas os comandos que o script irá executar:
Ex:
Citar
#! /bin/bash
sudo apt-get update
E salvarei como ex:"update.sh" na sua home/!!

Depois no Terminal, digito "ls" para listar tudo que esta na minha home/
Lá você ira ver o arquivo "update.sh" listado
Então vamos torná-lo executável
Citar
chmod +x update.sh
Pronto o arquivo jah é um executável, salve ele em um lugar que você não ira mexer depois, e depois para ficar ainda mais fácil crie um lançador na área de trabalho ou no menu iniciar! "mas lembrem-se tem que ser executado via Terminal"
ex:
Citar
crie um laçador e em Comandos clique no botão navegar, e selecione o arquivo criado "update.sh", e em Tipo selecione Aplicativo no terminal
pronto, se quiser mude o icone e deixe um de seu gosto!

Se quiser executá-lo direto pelo Terminal
Citar
./update.sh

Esse script que criei foi para substituir comando apt-get update, ao invés de digitar no terminal toda hora, bastei dar "2" clics!! ;)

Bem, por enquanto é só.

Alguém aí tem alguma idéia bacana??


[],s


Alyscom
« Última modificação: 11 de Dezembro de 2009, 11:11 por Alyscom »
O álcool é o photoshop da vida real
 

Offline Falco90

  • Usuário Ubuntu
  • *
  • Mensagens: 669
  • mais um desocupado à procura de ajudar quase todos
    • Ver perfil
    • Blog de Tecnologia
Re: Vamos criar scripts úteis aqui!?
« Resposta #1 Online: 11 de Dezembro de 2009, 18:35 »
Um bem simples que eu uso aki é assim:
Código: [Selecionar]
#! /bin/bash
sudo apt-get update && sudo apt-get install -y gimp soundkonverter kiso kmess visualboyadvance-gtk mupen64plus stardict kget xchat qbittorrent choqok

O && é pra ele usar o próximo comando quando terminar de processar o anterior. O -y depois do install é pra ele ir logo instalando sem perguntar nada.

Uso esse script pra instalar os programas que eu costumo usar, mas vc pode colocar qualquer programas no lugar desses que tão ai. Como ele tem o sudo que precisa de senha, executo pelo terminal.
E pelo que eu observei aki no meu Ubuntu 9.10, se vc colocar isso na primeira linha do arquivo de texto: #! /bin/bash , não precisa colocar .sh no nome do arquivo.
« Última modificação: 11 de Dezembro de 2009, 19:40 por Falco90 »

Offline Holmes

  • Usuário Ubuntu
  • *
  • Mensagens: 255
  • Usuário Linux desde final de 2009.
    • Ver perfil
    • holmeslinux
Re: Vamos criar scripts úteis aqui!?
« Resposta #2 Online: 11 de Dezembro de 2009, 19:34 »
Oi galera,
Gostei da iniciativa e estou aprendendo como construir um script. Qualquer dúvida postarei aqui!
Abs, Viva
« Última modificação: 11 de Dezembro de 2009, 19:35 por Viva »
EeePC 1008ha - Chakra Linux (Edn) - KDE 4.7.4 - Kernel 3.1.
- Meu Blog: http://holmeslinux.blogspot.com/
- Fundador do Chakra Brasil: http://chakra-linux.com.br/forum

Offline Alyscom

  • Usuário Ubuntu
  • *
  • Mensagens: 774
  • Apenas me dê o feijão!
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #3 Online: 11 de Dezembro de 2009, 21:18 »
E pelo que eu observei aki no meu Ubuntu 9.10, se vc colocar isso na primeira linha do arquivo de texto: #! /bin/bash , não precisa colocar .sh no nome do arquivo.
Eu também tinha notado isso, só não falei antes porquê tive medo de estar errado! ;D

Um bem simples que eu uso aki é assim:
Código: [Selecionar]
#! /bin/bash
sudo apt-get update && sudo apt-get install -y gimp soundkonverter kiso kmess visualboyadvance-gtk mupen64plus stardict kget xchat qbittorrent choqok

O && é pra ele usar o próximo comando quando terminar de processar o anterior. O -y depois do install é pra ele ir logo instalando sem perguntar nada.

Uso esse script pra instalar os programas que eu costumo usar, mas vc pode colocar qualquer programas no lugar desses que tão ai. Como ele tem o sudo que precisa de senha, executo pelo terminal.

esse seu script foi uma boa dica, valeu por compartir ele aqui neste tópico!


[]'s


Alyscom
O álcool é o photoshop da vida real
 

Offline Alyscom

  • Usuário Ubuntu
  • *
  • Mensagens: 774
  • Apenas me dê o feijão!
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #4 Online: 11 de Dezembro de 2009, 21:27 »
Oi galera,
Gostei da iniciativa e estou aprendendo como construir um script. Qualquer dúvida postarei aqui!
Abs, Viva
Opá.... Beleza?
Então com esses scripts não tem mistério, tenho certeza que você irá achar conteudo de grande ajuda no Google ou até mesmo aqui no Fórum! ;)

Criei este tópico afim de ajudar os que não gostam de estar toda hora digitando la no terminal!


[]'s



Alyscom
O álcool é o photoshop da vida real
 

Offline platao

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 5.052
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #5 Online: 12 de Dezembro de 2009, 00:02 »
Quando inicializo o meu Ubuntu ele e meio "locão" vai colocando os programas na area de notificação de qualquer jeito as vezes o aplicativo de data e hora fica no meio dos outros mesmo colocando a opção de bloquear entao fiz um script simples para inicializar os programas que eu quero na ordem e no tempo que eu quero que apareçam.

abro o terminal e digito por exemplo:

gedit .pidgin-start

e coloco esse conteudo nele

#!/bin/bash
sleep 20 && pidgin

e depois vo la em aplicativos de sessao e adicionar e em procurar e vo la na home onde esta o script (control + h) e adiciono ele na inicialização.

pronto acabou a zona na hora do inicio da sessao.

e um para poder usar a minha web cam integrada no skype

#!/bin/sh
export XLIB_SKIP_ARGB_VISUALS=1
skype



\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997

Offline Falco90

  • Usuário Ubuntu
  • *
  • Mensagens: 669
  • mais um desocupado à procura de ajudar quase todos
    • Ver perfil
    • Blog de Tecnologia
Re: Vamos criar scripts úteis aqui!?
« Resposta #6 Online: 12 de Dezembro de 2009, 00:19 »
e coloco esse conteudo nele

#!/bin/bash
sleep 20 && pidgin

e depois vo la em aplicativos de sessao e adicionar e em procurar e vo la na home onde esta o script (control + h) e adiciono ele na inicialização.

pronto acabou a zona na hora do inicio da sessao.

Interessante, sinto que sera util pra mim.

A internet aki é um pouco lenta, as vezes fica difícil jogar online, pra melhorar essa situação eu fecho tdos os programas que usam internet e downloads, como são vários clients de msn/twitter/irc eu criei um script pra fechar tudo e outro para abrir depois de terminar de jogar.

O para Fechar:
Código: [Selecionar]
#!/bin/bash
killall kmess &
killall qbittorent &
killall kget &
killall xchat &
killall choqok

O para Abrir:
Código: [Selecionar]
#!/bin/bash
kmess &
qbittorent &
kget &
xchat &
choqok
Esses são os programas que eu uso, podem ser substituídos pelos que vc usa.

Salvei eles com nome de "Fechar" e "Abrir" e coloquei na pasta /bin pra virarem comandos. O nome deles é Fechar e Abrir, mas como o alt+F2 completa o nome automaticamente eu só digito F pra fechar e A pra abrir.

Comandos:
killall -> Fecha o programa na hora("Mata" o programa)
& -> Não espera o comando anterior terminar pra começar o próximo
« Última modificação: 13 de Dezembro de 2009, 18:49 por Falco90 »

Offline clcampos

  • Administrador
  • Usuário Ubuntu
  • *****
  • Mensagens: 10.790
  • .:: User Linux #439596 ::.
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #7 Online: 13 de Dezembro de 2009, 01:12 »
Movido para Programação e Scripts.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

Offline mpmoraes

  • Usuário Ubuntu
  • *
  • Mensagens: 516
  • Rio de Janeiro - RJ
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #8 Online: 13 de Dezembro de 2009, 09:47 »
Acho a intenção muito boa, só me pergunto sobre a ocorrência de redundâncias.
Como exemplo vou aproveitar o script que foi feito para atualização dos repositório, para os mais "chegados": apt-get update
Acredito ser desnecessário um script como esse, já que na interface gráfica temos em Sistema > Administração > Gerenciador de Atualizações, que faz a mesma coisa e algo mais, pois ainda possibilita o apt-get upgrade.
Outro pondo que considero de grande valia e colocar um script "explicativo", como vemos nos arquivos de configuração dos pacotes.
Aí, além de facilitarmos a vida dos usuários com coisas úteis, ainda podemos "ensinar" para que serve cada coisa e como interpretar os comandos.
Fica aí minha sugestão...
Ubuntu 12.04 - AMD64 Notebook: Compaq Q40-714br, Intel Core 2 Duo T6600 2.2GHz Memória 4GB HD 500GB DVD-RW

Offline Falco90

  • Usuário Ubuntu
  • *
  • Mensagens: 669
  • mais um desocupado à procura de ajudar quase todos
    • Ver perfil
    • Blog de Tecnologia
Re: Vamos criar scripts úteis aqui!?
« Resposta #9 Online: 13 de Dezembro de 2009, 18:39 »
Outro pondo que considero de grande valia e colocar um script "explicativo", como vemos nos arquivos de configuração dos pacotes.
Aí, além de facilitarmos a vida dos usuários com coisas úteis, ainda podemos "ensinar" para que serve cada coisa e como interpretar os comandos.
Fica aí minha sugestão...
Até concordo com vc, pois poupa a pessoa de procurar o significado de algo que ela queira em outro lugar.

Mas o que acho mais importante aki é a criatividade, usar essa liberdade para fazer algo que facilite nossa vida. Podemos tanto usar algo que outra pessoa fez, como ter uma idéia olhando o que ela fez.
« Última modificação: 13 de Dezembro de 2009, 18:50 por Falco90 »

Offline Alyscom

  • Usuário Ubuntu
  • *
  • Mensagens: 774
  • Apenas me dê o feijão!
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #10 Online: 13 de Dezembro de 2009, 18:52 »
Até concordo com vc, pois poupa a pessoa de procurar o significado de algo que ela queira em outro lugar.

Mas o que acho mais importante aki é a criatividade, usar essa liberdade para fazer algo que facilite nossa vida. Podemos tanto usar algo que outra pessoa fez, como ter uma idéia olhando o que ela fez.
Tirou as palavras da minha boca!! ;)



[]'s



Alyscom
O álcool é o photoshop da vida real
 

Offline danpos

  • Usuário Ubuntu
  • *
  • Mensagens: 386
    • Ver perfil
[batch-wav2mp3.sh]: converte em lote arquivos WAV (ADPCM) para MP3.
« Resposta #11 Online: 13 de Dezembro de 2009, 19:42 »
@All

Motivação

Fiz esse script para converter arquivos WAV de um gravador de áudio digital (usado para gravar as aulas da faculdade) para MP3 (pedido de uma amiga, que queria ouvir as aulas em seu telefone  ;D ). Ocorre que o formato do dispositivo é ADPCM, codec incompatível com vários players (soft e hard), daí a motivação de fazer o script.

Código

Código: [Selecionar]
#!/bin/bash
#===============================================================================
#
#          FILE:  batch-wav2mp3.sh
#
#         USAGE:  ./batch-wav2mp3.sh
#
#   DESCRIPTION:  It converts wav files to mp3 files (batch conversion)
#
#       OPTIONS:  ---
#  REQUIREMENTS:  mplayer, sox and lame
#          BUGS:  ---
#         NOTES:  ---
#        AUTHOR:  Danilo Cai M Marques (), danpos_at_google_mail
#       COMPANY:  Danpos Home Corp.
#       VERSION:  1.0
#       CREATED:  03-11-2009 00:24:50 BRST
#      REVISION:  2
#===============================================================================

clear

# Some initial parameters

[ -d "/tmp/WAV2MP3" ] && rm -rf "/tmp/WAV2MP3" # empty if previously there was.
[ -d ${HOME}/MP3CONVERTED ] || mkdir ${HOME}/MP3CONVERTED

DIRTEMP=/tmp/WAV2MP3; mkdir /tmp/WAV2MP3 # creating a temporary directory
MP3OUT=${HOME}/MP3CONVERTED
COUNT=0

echo -e "**+++++++++++++++++++++++++++++++++++++++++++++++"
echo -e "** batch-wav2mp3 is a bash script which does the"
echo -e "** batch conversion from a bunch of WAV (ADPCM)"
echo -e "** files to MP3 files"
echo -e "** Danilo C M Marques - version 1.r2 (03/11/2009)"
echo -e "**+++++++++++++++++++++++++++++++++++++++++++++++\n"

for WAV in *.WAV
do
[ -f ${WAV} ] && COUNT=$((COUNT+1)) # Are there *.WAV files?

WAVFILE=`basename ${WAV} .WAV`
NEW_WAV="${DIRTEMP}/${WAVFILE}.wav"
NEW_MP3="${DIRTEMP}/${WAVFILE}.mp3"

mplayer -really-quiet -ao pcm:file="${NEW_WAV}" ${WAV} 2>/dev/null

echo -e "** Checking volume levels for $NEW_WAV\n"
ampl=`sox "${NEW_WAV}" -t wav /dev/null stat -v 2>&1 | grep -v sox:`

echo -e "** Amplifying volume by $ampl to fake a normalize"
echo -e "** and converting $WAVFILE.wav to 16 bit 8000\n"
sox -V0 -v "$ampl" "${NEW_WAV}" -t wav -r 8000 -c 1 -2 -s \
"${NEW_WAV%.wav}.converted.wav"

echo -e "** Now converting ${WAVFILE}.converted.wav to"
        echo -e "** ${WAVFILE}.converted.mp3\n"
lame "${NEW_WAV%.wav}.converted.wav" "${NEW_MP3}" 2>/dev/null

echo -e "** Now copying converted ${WAVFILE}.mp3"
echo -e "** to ${MP3OUT}\n"
cp "${NEW_MP3}" ${MP3OUT}

echo -e "** Now renaming original file\n"
mv "${WAV}" "${WAVFILE}.JT.wav"
clear
done
        echo -e "**+++++++++++++++++++++++++++++++++++++++++++++++"
        echo -e "** batch-wav2mp3 is a bash script which does the"
        echo -e "** batch conversion from a bunch of WAV (ADPCM)"
        echo -e "** files to MP3 files"
        echo -e "** Danilo C M Marques - version 1.r2 (03/11/2009)"
        echo -e "**+++++++++++++++++++++++++++++++++++++++++++++++\n"

[ ${COUNT} -eq "0" ] && echo -e "** No *.WAV files to transcode!\n"
echo -e "** Done!\n"
echo -e "** Clean up temporary directory!!"
rm -rf "${DIRTEMP}"
echo -e "** Done! Finished."
exit 0

Explicação

O script pega todos os arquivos de um diretório com extensão WAV (essa é a extensão gerada pelo gravador) e então faz a transcodificação para MP3 no diretório MP3CONVERTED do $HOME e após modifica o nome e extensão final do arquivo (inserindo um .jt.wav), evitando que o mesmo arquivo seja transcodificado na próxima execução do script (i.e. eu guardo todos os arquivos gravados em um mesmo diretório e nesse eu executo o script cada vez que adiciono novos arquivos, entenderam?).

Nome

Eu o chamo de batch-wav2mp3-v1r2.sh (pois ele faz conversão em lote dos arquivos).

Sds,

Danpos.

Offline Alyscom

  • Usuário Ubuntu
  • *
  • Mensagens: 774
  • Apenas me dê o feijão!
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #12 Online: 13 de Dezembro de 2009, 19:51 »
danpos realmente muito bom!! :D




[]'s




Alyscom
O álcool é o photoshop da vida real
 

Offline danpos

  • Usuário Ubuntu
  • *
  • Mensagens: 386
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #13 Online: 13 de Dezembro de 2009, 20:34 »
danpos realmente muito bom!! :D




[]'s




Alyscom

Valeu pelo elogio.  :D ;D

Realmente ele funciona direitinho (pois fiz várias transcodificações nesse período da faculdade). É só ter o bash, mplayer, sox e lame instalados. ;)

Danpos.

Offline platao

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 5.052
    • Ver perfil
Re: Vamos criar scripts úteis aqui!?
« Resposta #14 Online: 13 de Dezembro de 2009, 22:10 »
Moçada aproveitando, mas sem querer ser "pidão" alguem tem algum script que dê um "refresh" nas portas usb? eu explico;

eu tenho um hd externo e se eu reinicializo a maquina com ele ligado ao entrar no sistema ele nao monta....mesmo eu instalando algumas ferramentas para esse fim como o mout-manager,  tem como sem ser no mtab e fstab? só com um script?




\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997