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".