|
发表于 2008-6-12 17:35:06
|
显示全部楼层
我觉得都是管道惹的祸,因为find不是shell,没有管道这样牛的功能。这就能解释为什么总是报“same file”消息,因为find不能识别管道符,相当于只执行了“find -name "*[A-Z]*" -exec mv {} $(echo {}) \;”。
相反,如果调用shell帮执行就能完成:
- find -name "*[A-Z]*" -exec bash -c 'mv {} $(echo {} | tr [A-Z] [a-z])' \;
复制代码 |
|