在BOF或EOF中查找具有空白或WS的所有文件

时间:2009-12-22 01:41:33

标签: php shell sed grep

每个人都知道PHP讨厌文件开头或结尾的空行(在PHP标记之前或之后)。

我有一个awk脚本可以修改文件。我将所有文件传递给它,事情很好,没有更多的前导或尾随空白行。

我想首先查找文件,以构建快速的异常报告。

我试过这样的事情:

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

但那是错的。

1 个答案:

答案 0 :(得分:13)

如果在每个文件的开头或结尾都找到一个空行,则此shell脚本将遍历您的所有文件并进行打印:

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