Código
#! /bin/bash function donde() { local ubic echo "1. disco" echo "2. memoria" read -p "donde desea guardar el backup " ubic case $ubic in [1-2]) return $ubic;; *) echo "valor no valido" donde esac } function que() { local tipo echo "1. .doc" echo "2. .txt" echo "3. .pdf" echo "4. .c" echo "5. .sh" read -p "a que tipo de archivo " tipo case $tipo in [1-5]) return $tipo;; *) echo "valor no valido" que esac } donde ubic=$? case $ubic in 1) ubi='-d /home/sdii/Documentos/backup' ubic="mkdir /home/sdii/Documentos/backup" ubicc='/home/sdii/Documentos/backup/ \;';; *) ubi='-d /media/sdii/F26258CF62589A65/backup' ubic='mkdir /media/sdii/F26258CF62589A65/backup' ubicc="/media/sdii/F26258CF62589A65/backup/ \;" esac que tipo=$? case $tipo in 1) tipo='sudo find /home -iname "*.docx" -exec cp {} ' tipoo=$tipo$ubicc;; 2) tipo='sudo find /home -iname "*.txt" -exec cp {} ' tipoo=$tipo$ubicc;; 3) tipo='sudo find /home -iname "*.pdf" -exec cp {} ' tipoo=$tipo$ubicc;; 4) tipo='sudo find /home -iname "*.c" -exec cp {} ' tipoo=$tipo$ubicc;; *) tipo='sudo find /home -iname "*.sh" -exec cp {} ' tipoo=$tipo$ubicc esac if [ $ubi ] then $tipoo else $ubic $tipoo fi
Esto pasa cuando pongo que se ejecute la variable tipoo
Poniendo echo y ejecutando: