帮我看看这个高亮显示的脚本

我想将ls -l列表的最后一列高亮显示, 如下代码为何不行呢。(我知道用ls -l --color可以实现,但我只是想知道这样为何不行)
-----------------------------------------------------------------------
#!/bin/bash

ABC=`ls -l | sed -n 's/[^[:space:]]*\.[^[:space:]]*$/\\033[0;32m&\\033[0m/p' `

echo -e $ABC
------------------------------------------------------------------------
另外:

[^[:space:]]*为什么不能改成[^[:space:]]+或[s]+呢?
似乎sed不支持'+',和's'(空白字符)呀,我的 sed版本是4.0.5

我初学shell,  多多指教!!