ich schreib grad an nem Script rum und habe da eine Auswahl mit "case". Wenn ich in die einzelnen cases statt
Code: Alles auswählen
echo "hioer passiert was..."
Code: Alles auswählen
cat << EOF
hier passiert was ..
EOF
Code: Alles auswählen
function part_default () {
device=$1
echo "default party"
fdisk -l $device
echo "Is this the device you want to use? y/n"
read choice
case ${choice} in
y)
cat << EOF
################################################################################
echo " wiping partitiontable of \"$device\" "
################################################################################
EOF
dd if=/dev/zero bs=1 count=66 seek=466 of=$device
new_device=`echo ${device} | cut -d"/" -f3`
sed s/sda/${new_device}/g ${PATHPREFIX}/defaults_configs/default_part_table.txt > ${PATHPREFIX}/defaults_configs/current_part_table.txt
swapoff -a
sfdisk $device < ${PATHPREFIX}/defaults_configs/current_part_table.txt;;
n)
echo "Then which one is it? Select by number"
DEVICES=`find /dev/ -type b | cat | grep [a-z]$`
select device in $DEVICES; do
echo $device
break;done
cat << EOF
################################################################################
echo "wiping partitiontable of \"$device\" "
################################################################################
EOF
dd if=/dev/zero bs=1 count=66 seek=466 of=$device
new_device=`echo ${device} | cut -d"/" -f3`
sed s/sda/${new_device}/g ${PATHPREFIX}/defaults_configs/default_part_table.txt > ${PATHPREFIX}/defaults_configs/current_part_table.txt
swapoff -a
sfdisk $device < ${PATHPREFIX}/defaults_configs/current_part_table.txt;;
*)
echo "Take your pick. y/n?" ${FUNCNAME};;
esac
}
Code: Alles auswählen
./subscripts/partitioning.sh: line 87: syntax error near unexpected token `}'
./subscripts/partitioning.sh: line 87: `} # end of part_interactive'
Die Frage ist: warum kann ich in den "Cases" kein HEREDOC verwenden?
Danke
p.s. vorsicht bei dieser funktion....die löscht den MBR also bitte NICHT ausführen