git rm -r cached <dir>按层次遍历目录导致删除目录下文件时“未匹配任何文件“错误

 haypin@MBP  ~/cpp_cmake_js_java_python   main ✚  git add *

 haypin@MBP  ~/cpp_cmake_js_java_python   main ✚  find . \( -ipath './js*' -o -ipath '*build*' -o -ipath '*idea*' \) -a -not -ipath '*venv*' -a -print|xargs git rm --cached

fatal: 未提供 -r 选项不会递归删除 './js'

fatal: 未提供 -r 选项不会递归删除 './js/myExpressApp/node_modules/core-js/es6'

# 但git rm <dir>时会报错未提供 -r 选项不会递归删除目录不能单独git rm <dir>而保留目录下的文件如果改成git rm -r则会发生先git rm上层目录然后git rm 上层目录下文件而发生“未匹配任何文件”的错误

解决办法:

将find查找结果存到文件,然后tail -r <file>逆序输出,管道给git rm -r就可以“后序”访问目录-文件节点而不会发生先git rm上层目录后git rm目录下文件的问题: 

haypin@MBP  ~/cpp_cmake_js_java_python   main ✚  find . \( -ipath './js*' -o -ipath '*build*' -o -ipath '*idea*' \) -a -not -ipath '*venv*' -a -print >> temp

 haypin@MBP  ~/cpp_cmake_js_java_python   main ✚  head temp

./js

./js/myExpressApp

./js/myExpressApp/bin

./js/myExpressApp/bin/www

./js/myExpressApp/node_modules

./js/myExpressApp/node_modules/constantinople

./js/myExpressApp/node_modules/constantinople/LICENSE

./js/myExpressApp/node_modules/constantinople/test

./js/myExpressApp/node_modules/constantinople/test/index.js

./js/myExpressApp/node_modules/constantinople/README.md

。。。

haypin@MBP  ~/cpp_cmake_js_java_python   main ✚  tail -r temp

。。。

./js/myExpressApp/node_modules/constantinople/lib

./js/myExpressApp/node_modules/constantinople/.gitattributes

./js/myExpressApp/node_modules/constantinople/.prettierrc

./js/myExpressApp/node_modules/constantinople/package.json

./js/myExpressApp/node_modules/constantinople/README.md

./js/myExpressApp/node_modules/constantinople/test/index.js

./js/myExpressApp/node_modules/constantinople/test

./js/myExpressApp/node_modules/constantinople/LICENSE

./js/myExpressApp/node_modules/constantinople

./js/myExpressApp/node_modules

./js/myExpressApp/bin/www

./js/myExpressApp/bin

./js/myExpressApp

./js

 haypin@MBP  ~/cpp_cmake_js_java_python/js   main ✚  tail -r temp|xargs git rm --cached -r

。。。

rm 'js/myExpressApp/node_modules/yargs/package.json'

rm 'js/myExpressApp/package-lock.json'

rm 'js/myExpressApp/package.json'

rm 'js/myExpressApp/public/stylesheets/style.css'

rm 'js/myExpressApp/routes/index.js'

rm 'js/myExpressApp/routes/users.js'

rm 'js/myExpressApp/views/error.pug'

rm 'js/myExpressApp/views/index.pug'

rm 'js/myExpressApp/views/layout.pug'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值