Alexey, эта проблема часто замечается в grub2. Я столкнулся с этим при просматривании форумов человечности, где это отмечено, как решено. Взгляните на там: http://ubuntuforums.org/showthread.php?t=1343362. Надо надеяться, это поможет Вам.
Это не работает, как Вы ожидаете.
ls
потому что это перестало работать, если у Вас есть специальные символы в именах файлов (как пробелы, который является, вероятно, не случаем для Вашей проблемы);цикл по существующим HDF-файлам и извлечению МЕТКА ВРЕМЕНИ от имен файлов:
# assuming you do not have whitespaces etc. in filenames
for i in $DATADIR/$DATE$DATE1*.L1A_LAC.$LOCATIONNAME.hdf ; do
if [ ! -f "$i" ] ; then #check if pattern could be expanded
break ;
fi
HDFFILE="$i"
TIMESTAMP=$(basename "$i" ".L1A_LAC.$LOCATIONNAME.hdf")
GEOFILE=$LOCATION_NAME-$TIMESTAMP.GEO
LACFILE=$TIMESTAMP.L1B_LAC
HKMFILE=$TIMESTAMP.L1B_HKM
QKMFILE=$TIMESTAMP.L1B_QKM
L2FILE=$TIMESTAMP.L2.hdf
# process $i
# [...]
Если я понимаю Вас правильно, необходимо удалить все после первой точки в имени файла для получения метки времени. Это расширение параметра должно помочь:
TIMESTAMP="${i%%.*}"