#!/bin/sh # # Script has been created by Bart Coppens, bart.coppens@gatewaycomms.com # #version 1.0 # #This tool is designed for Polycom IP phone devices only, to manage (create/delete/check) the contents in the xml phone directories. #Just copy and run the script in the default directory, where all your *-directory.xml scripts are located. #Add the directory XML files into the array below, see "declare the directories to manage", -and don't forget to update the filecounter #When executing, the script will ask you to choose between a delete action, a add action or a check action. #Warning: when executing any "delete/create" actions, the script will overwrite all original files. "Check" actions are harmless # #DIALOG=Xdialog DIALOG=dialog # declare -a file # # declare the directory files. Note that the file should exist otherwise the script will fail. # file[0]=000000000000-directory.xml file[1]=0004f2019534-directory.xml file[2]=0004f2013341-directory.xml file[3]=0004f2013471-directory.xml file[4]=0004f201374f-directory.xml file[5]=0004f2014be1-directory.xml file[6]=0004f2014d07-directory.xml file[7]=0004f2014de1-directory.xml file[8]=0004f2014e92-directory.xml file[9]=0004f2014ee6-directory.xml file[10]=0004f2014efb-directory.xml file[11]=0004f2014f51-directory.xml file[12]=0004f2014f54-directory.xml file[13]=0004f2014f9d-directory.xml file[14]=0004f2014fa7-directory.xml file[15]=0004f2014fc4-directory.xml file[16]=0004f201505b-directory.xml file[17]=0004f201505e-directory.xml file[18]=0004f2015060-directory.xml file[19]=0004f2015075-directory.xml file[20]=0004f2015077-directory.xml file[21]=0004f2015084-directory.xml file[22]=0004f201933d-directory.xml file[23]=0004f2019526-directory.xml file[24]=0004f20195c5-directory.xml file[25]=0004f2019a4a-directory.xml file[26]=0004f2019b5d-directory.xml file[27]=0004f2019f90-directory.xml file[28]=0004f201af2e-directory.xml file[29]=0004f201af5b-directory.xml file[30]=0004f201afc8-directory.xml file[31]=0004f201afd4-directory.xml file[32]=0004f201afe6-directory.xml file[33]=0004f201b0ec-directory.xml file[34]=0004f201b0f2-directory.xml file[35]=0004f201b02c-directory.xml file[36]=0004f201b04d-directory.xml file[37]=0004f201b044-directory.xml file[38]=0004f2019ec7-directory.xml file[39]=0004f2019f90-directory.xml file[40]=0004f2014f02-directory.xml file[41]=0004f2014f2b-directory.xml file[42]=0004f2014f7c-directory.xml file[43]=0004f201507e-directory.xml file[44]=0004f20192c3-directory.xml # # declare the number of directories to be managed # filecounter=45 # # Start of script echo "Kind of action: [add/delete/check]" read action if [ "$action" = "add" ]; then echo "Please enter the first name" read fname echo "Please enter the last name" read lname echo "Please enter extension number" read extension echo "First name is $fname, last name is $lname, extension is $extension" echo "Original files will be overwritten! Do you want to continue? [yes/no]" read confirm if [ "$confirm" = "yes" ]; then echo "threatment in progress" else echo "Threatment Aborted" exit 0 fi X=0 while [ $X -lt $filecounter ] do sed '4i\ \ '$lname'\ '$fname'\ '$extension'\ ' ${file[$X]} > ${file[$X]}.new mv ${file[$X]}.new ${file[$X]} X=$((X+1)) done # # The delete action check on the existance of the extension, -checks on the number of lines to delete after the extension (as this can defer). # elif [ "$action" = "delete" ]; then echo "Please enter extension number" read extension X=0 jref="empty" while [ $X -lt $filecounter ] do j="" noex="execute" export i=`file "$arg" | grep text | sed -n -e '/'$extension'/{=;}' ${file[$X]}` if [ -z "$i" ]; then echo "Extension $extension does not exist in ${file[$X]}" noex="" fi z=$i if [ -n "$noex" ]; then while [ -z "$j" ] do export j=`file "$arg" | grep text | sed -n ''$z','$z'p' ${file[$X]} | grep item` z=$((z+1)) done lineup=$((i-3)) z=$((z-1)) sed -n ''$lineup','$z'!p' ${file[$X]} > ${file[$X]}.new mv ${file[$X]}.new ${file[$X]} echo "Extension $extension has been deleted from ${file[$X]}" fi X=$((X+1)) done elif [ "$action" = "check" ]; then echo "Please enter extension number" read extension X=0 while [ $X -lt $filecounter ] do noex="execute" export i=`file "$arg" | grep text | sed -n -e '/'$extension'/{=;}' ${file[$X]}` if [ -z "$i" ]; then echo "Extension $extension does not exist in ${file[$X]}" noex="" else echo "Extension $extension does exist in ${file[$X]}" fi X=$((X+1)) done fi