Всем известно, что PHP ненавидит пустые строки в начале или конце файла (до или после тегов PHP).
У меня есть awk
скрипт, который будет изменять файлы. Я передаю все свои файлы через него, и все персидское, не более ведущие или завершающие пустые строки.
Сначала я хотел бы найти файлы, чтобы создать быстрый отчет об исключениях.
Я попробовал что-то вроде этого:
grep -r -e :a -e '/^\n*$/{$d;N;};/\n$/ba'
Но это неправильно.
Этот сценарий оболочки будет проходить через все ваши файлы и распечатывать, если он найдет пустую строку в начале или конце каждого файла:
for f in `find . -type f`; do for t in head tail; do $t -1 $f |egrep '^[ ]*$' >/dev/null && echo "blank line at the $t of $f"; done; done
Я сломал строки для удобочитаемости, но вы можете запустить его как один лайнер.
Пример вывода:
blank line at the head of ./b blank line at the tail of ./c blank line at the head of ./d blank line at the tail of ./d