#!/bin/bash # Fichero: instala_drush.sh # Instalación de "drush", la "navaja suiza" de DRUPAL. # versió 1.2 (23/08/2009) # Autor: isaac.el.cec@gmail.com (http://www.propium.org) # Requisitos: # Es necesario que el directorio de las ordenes del usuario (declarado en la variable $DIR_BIN), # este entre los caminos de la variable de entorno $PATH. # Descripción: # Seguir los comentarios... ;-) # DATOS INICIALES (Modificar según cada caso...) # ============================================== DIR_BIN="${HOME}/bin" # Directorio de las órdenes del usuario (si no existe, se creará) # Versión del "drush" (Cuidado, si se moduifica este valor, es necesario coincidencia exacta con # el nombre del fichero correspondiente que haya en el sitio ftp.drupal.org). VERSION_DRUSH="All-Versions-2.0" # DECLARACIÓN de VARIABLES y FUNCIONES INTERNAS # ============================================= YO=`basename "${0}"` ; espera() { echo "${YO} => Pulse INTRO para continuar"; read a; } # PROCESO: # ======== tput clear ; # Verificar la existencia del directorio de órdenes del usuario. Si no existeix, crear-lo. if [ ! -d "${DIR_BIN}" ] then mkdir ${DIR_BIN} ; fi # Directorio de trabajo: cd ${DIR_BIN} ; echo "${YO} => Bajando el paquete y verificando que toda haya sido correcto . . ." wget http://ftp.drupal.org/files/projects/drush-${VERSION_DRUSH}.tar.gz if [ "${?}" != "0" ] then echo "${YO} => ERROR - NO se ha podido obtener el fichero [drush-${VERSION_DRUSH}.tar.gz] en el sitio ftp.drupal.org" ; espera ; exit 1 ; fi # Descomprimir echo "${YO} => Descomprimiendo el paquete . . ." tar -xzf drush-${VERSION_DRUSH}.tar.gz ; echo "${YO} => Canviando el nombre del directorio a [drush.dir] para evitar conflicto posterior . . ." mv drush drush.dir ; echo "${YO} => Creando el link simbólico ${DIR_BIN}/drush . . ." ln -s ./drush.dir/drush drush ; echo "${YO} => Eliminando el paquete original drush-${VERSION_DRUSH}.tar.gz . . ." rm -f drush-${VERSION_DRUSH}.tar.gz echo "${YO} => INSTALACIÓ de [drush] FINALIZADA. Ahora se verificará..." ; espera ; # Verificar: tput clear cd $HOME drush help if [ "${?}" != "0" ] then drush help if [ "${?}" != "0" ] then echo "${YO} => ERROR - No he podido verificar la correcta instalación de [drush] ..." echo "${YO} => Probablemente el directorio ${DIR_BIN} no se encuentra en la variable PATH..." echo "${YO} => El valor actual de la varible PATH= ${PATH}" espera ; exit 2 else echo "${YO} => ERROR - No he podido verificar la correcta instalación de [drush] ..." echo "${YO} => Probablemente el fichero ${DIR_BIN}/drush no tiene permisos de ejecución..." espera ; exit 3 fi else espera ; exit 0 fi