您可以先进入深度,然后仅在basename中替换:
find lib -depth -type d -name "*2.6*" -exec \
bash -c 'basename="${1##*/}" && mv "$1" "${1%/*}/${basename/2.6/2.7}"' -- {} \;
如果你用一个
echo
find lib -depth -type d -name "*2.6*" -exec \
bash -c 'bn="${1##*/}" && echo mv "$1" "${1%/*}/${bn/2.6/2.7}"' -- {} \;
在用以下对象创建的树上:
mkdir -p lib/python2.6/site-packages/{x/test,x-0.20-py2.6.egg-info}
i、 e.,开:
lib/
âââ python2.6
âââ site-packages
âââ x
â  âââ test
âââ x-0.20-py2.6.egg-info
你会得到:
mv lib/python2.6/site-packages/x-0.20-py2.6.egg-info lib/python2.6/site-packages/x-0.20-py2.7.egg-info
mv lib/python2.6 lib/python2.7