Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
302 views
in Technique[技术] by (71.8m points)

php - Find all files with Blank or WS at BOF or EOF

Everyone knows PHP hates blank lines at the beginning or end of a file (before or after the PHP tags).

I've got an awk script that will modify the files. I pass all my files through it and things are peachy, no more leading or trailing blank lines.

I'd like to FIND the files first, to build a quick exception report.

I tried something like this:

grep -r -e :a -e '/^
*$/{$d;N;};/
$/ba'

But that's wrong.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

This shell script will go through all your files and print if it found a blank line at the beginning or end of each file:

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

I broke the lines for readability, but you can run it as a one liner too.

example output:

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

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...