stephen@stephens-MacBook-Pro ~ % find ./ -name 'charles*'|xargs rm -rf
stephen@stephens-MacBook-Pro ~ % find ./ -name 'charles*'
.//Library/Application Support/Charles/ca/charles-proxy-ssl-proxying-certificate.pem
.//Library/Application Support/Charles/ca/charles-proxy-ssl-proxying-certificate.cer
.//Library/Application Support/Charles/backup/charles-4.6.4-backup.config
.//Library/Application Support/Charles/backup/charles-4.6.5-backup.config
.//Library/Application Support/Charles/backup/charles-4.6.1-backup.config
.//Library/Application Support/Charles/backup/charles-4.6.2-backup.config
.//Downloads/charles-proxy-4.6.5 (1).dmg
stephen@stephens-MacBook-Pro ~ % find ./ -name 'charles*'|xargs rm -rf
stephen@stephens-MacBook-Pro ~ % find ./ -name 'charles*'
.//Library/Application Support/Charles/ca/charles-proxy-ssl-proxying-certificate.pem
.//Library/Application Support/Charles/ca/charles-proxy-ssl-proxying-certificate.cer
.//Library/Application Support/Charles/backup/charles-4.6.4-backup.config
.//Library/Application Support/Charles/backup/charles-4.6.5-backup.config
.//Library/Application Support/Charles/backup/charles-4.6.1-backup.config
.//Library/Application Support/Charles/backup/charles-4.6.2-backup.config
.//Downloads/charles-proxy-4.6.5 (1).dmg
xargs 是默认是空白分隔的。你这些路径里都有空格,所以都被拆成多个了。
Linux 下, find 可以以 \0 分隔(-print0),xargs 也可以(-0)。两者配合着用就没这个问题。
Mac 的 find 不一样,自己去查一下吧。