Pracuję nad automatycznymi skryptami działającymi na Linux-ie (Debian). Te skrypty są uruchamiane z harmonogramu i manipulują plikami w ich własnych katalogach.
Na końcu skryptów muszę usunąć pliki tymczasowe.
Obecnie mam coś takiego:
#check that some variables are not empty
if [[ -z $var1 || -z $var2 || -z $var3 ]]; then
echo "Some var is empty"
exit 1
fi
workingdir=$var1/$var2
#some checks on working directory
if [[ ! -d $workingdir ]]; then
echo "Directory error"
exit 1
fi
cd $workingdir
if [[ $(pwd) != $workingdir ]]; then
echo "Change directory error"
exit 1
fi
#...here goes the main part of the script
#and at the end, the "cleaning"
if [[ -d $workingdir/temp/$var3 ]]; then
find $workingdir/temp/$var3 -delete;
fi
Czy masz jakiś pomysł, którego mógłbym użyć, aby zmniejszyć ryzyko usunięcia czegoś niewłaściwego?
Dziękuję Ci.
pozdrowienia
for f in "$workingdir"*; do...
*
nie zostanie rozwinięty. Dlaczego nie spróbujesz echo "$workingdir"*
, echo "$workingdir*"
, echo "$workingdir"/*
a echo "$workingdir/*"
i zobaczyć na własne oczy?
"double-quote $variables"
.