У меня есть этот фрагмент скрипта .ksh:
for type in *
do
cd ${DATA_HOME}/$type
for mid in *
do
#doing something here
done
done
Мой вопрос: Так что же конкретно означает звездочка *
при использовании в цикле for, подобном приведенному выше?
решение1
"*" означает все файлы в текущем каталоге. Это эквивалентно (по крайней мере в bash - я ожидаю, что ksh похож) списку разделенных пробелами имен файлов/каталогов.
Вы всегда можете проверить это самостоятельно, набрав
echo *
Приведенный выше скрипт, скорее всего, выдал обработку файлов/каталогов, содержащих пробелы.