Похоже, две потенциальные проблемы :
Во-первых, переменная IFS и ее присваивание не должны содержать пробелов. Вместо
IFS = '\n'
должно быть IFS=$'\n'
Во-вторых, for name in ls
вызовет проблемы с именем файла, имеющим spaces
и newlines
. Если вы просто хотите обработать filename
с spaces
, сделайте что-то вроде этого
for name in *
Я не понимаю значения линии
number=`echo "$name" | grep -o "[0-9]\{1,2\}"`
Это даст вам числа, найденные в filename with spaces
в new lines
. Может быть, это то, что вы хотите.