hello reading started shell scripting , test purposes i'm trying create scripts personal use. have home fileserver sync , , i'm trying create interactive script can make task of mp3 syncing easier.
here script :
#!/bin/bash ############################################## ############ mp3 sync script ############## ############################################## #### rev: 01 20/07/2015 #### author: marcio ribeiro echo -e "sincronizar storage para o note ( escolha 01 ) ou note para storage ( escolha 02 ): \n 01 destino final note: \n 02 destino final storage:" read destino destino_ck=[0]-[12] while [ $destino != $destino_ck ] ; read -p "por favor escolha entre 01 ou 02:" destino done echo -e "digite letra inicial da banda que deseja utilizar na sincronização em caps" read letra letrack={az} while [ "$letra" != $letrack ]; read -p "digite letra inicial da banda que deseja utilizar na sincronização em cap:" letra done left="/storage/marcio/mp3/${letra}/" right="/data/mp3/${letra}/" if [ $destino = "01" ]; echo -e "`rsync -rvz ${left} ${right}`; \n `ls -lha ${right}`" else echo -e "`rsync -rvz ${right} ${left}`; \n `ls -lha ${left}`" fi i got basics working i'm trying limit user interaction want i'm failing. on first user prompt want accept 01 or 02 input , on second user prompt capital single letter. have clue why i'm failing on simple? please bare me i'm starting script ... !
i got working, it's not pretty code or best logic works :
!/bin/bash ############################################## ############ mp3 sync script ############## ############################################## #### rev: 01 20/07/2015 #### author: marcio ribeiro echo -e "sincronizar storage para o note ( escolha 1 ) ou note para storage ( escolha 2 ): \n 1: destino final note \n 2: destino final storage" read destino until [ "$destino" = "1" ] || [ "$destino" = "2" ]; read -p "por favor escolha entre 1 ou 2:" destino done #### echo -e "digite letra inicial da banda que deseja utilizar na sincronização em caps" read letra letra_ck='[a-z]' while [[ "$letra" != $letra_ck ]]; read -p "digite letra inicial da banda que deseja utilizar na sincronização em caps:" letra done #### left="/storage/marcio/mp3/${letra}/" right="/data/mp3/${letra}/" if [ $destino = "01" ]; echo -e "`rsync -rvz ${left} ${right}`; \n `ls -lha ${right}`" else echo -e "`rsync -rvz ${right} ${left}`; \n `ls -lha ${left}`" fi any ideas improvement welcome.
Comments
Post a Comment