Shell program error, can anyone see it?
Hi,
I have a problem trying to run this example safe delete program.
I get an error on line 18:
./rmf: line20: syntax error near unexpected token 'newline'
./rmv: line20: 'easc'
line 20 is end of 1st case statement. It's an example I'm trying to work through to understand and run. I have Redhat 8, maybe "OpenLinux" uses different syntax for the shell. Can anyone see offhand what is not liked about this?
Thanks!
The program in full:
#!/bin/bash
# rmv - a safe delete program
# uses a trash directory under your home directory
mkdir $HOME/.trash 2>/dev/null # if dir exists, discard errors
# four internal script vars
cmdlnopts=false
delete=false
empty=false
list=false
# get any command-line options
while getopts "dehl" cmdlnopts; do
case "$cmdlnopts" in
d) /bin/echo "deleting: \c" $2 $3 $4 $5 ; delete=true ;;
e) /bin/echo "emptying the trash..." ; empty=true ;;
h) /bin/echo "safe file delete v1.0"
/bin/echo "rmv -d[elete] -e[mpty] -h[elp] -l[ist] file1-4" ;;
l) /bin/echo "your .trash directory contains:" ; list=true ;;
easc # this is line 20
done
#d - delete any files found on the command line
if [ $delete = true ]
then
mv $2 $3 $4 $5 $HOME/.trash
/bin/echo " rmv finished."
fi
#e - empty the trash?
if [ $empty = true ]
then
/bin/echo "empty the trash? \c"
read answer
case "$answer" in
y) rm -fr $HOME/.trash/* ;;
n) /bin/echo "trashcan delete aborted." ;;
easc
fi
# l - show any files in the .trash directory
if [ $list = true ]
then
ls -l $HOME/.trash
fi
|