Цель этой команды - собрать содержимое всех файлов в текущем каталоге, чьи имена оканчиваются (css ... rb), в файл с именем onebigfile (с разделителями) IIUC.
Чтобы отладить этот тип последовательных команд, вы можете запустить отдельные команды или отдельные группы команд, чтобы попытаться увидеть, что происходит. Например, попробуйте:
find .
find . | grep '.*\(css\|js\|rjs\|rhtml\|rb\)$'
find . | grep '.*\(css\|js\|rjs\|rhtml\|rb\)$' | sort
Затем получите одну строку вывода (например ./dir/file.css) и попробуйте:
echo './dir/file.css' | while read in; do echo ${in}; done
echo './dir/file.css' | while read in; do cat ${in}; done
echo './dir/file.css' | while read in; do cat ${in} >> onebigfile; done
Тогда вы сможете понять, что происходит.
Возможно, проблема в именах файлов и каталогов, содержащих пробелы. Решением в этом случае является использование команды find -print0
.