现有循环的 Cmder 别名

Cmder alias to existing loop

我有一个基本上按文件夹名称递归删除文件夹的循环:

for /d /r . %d in (node_modules) do @if exist "%d" rm -rf "%d" 

这很好用,如果我 运行 它在 cmder 中单独运行,它将从当前设置的目录开始循环,然后删除它找到的任何实例。

我想,因为它是一个衬里,所以我可以通过以下操作轻松地将它作为别名添加到 cmder:

cnode=for /d /r . %d in (node_modules) do @if exist "%d" rm -rf "%d" 

cnode ==(干净的节点),它只是一些容易记住的东西,但是当我 运行 命令时它实际上根本没有做任何事情。

有什么想法吗?

find ./node_modules -name 'foo' -type d -exec rm -rf {} \;

或在 node_modules 中找到任何名为 'foo' 和 运行 rm -rf 的目录

它也可以通配符:

find ./node_modules -name 'foo*' -type d -exec rm -rf {} \;

如果你想让它成为一个别名,你必须把它变成一个函数。 创建文件 aliases 并使其成为:

#!/bin/bash function remove_dir () { find ./node_modules -name "'*'" -type d -exec rm -rf {} \; }

还有别人说的,你在windows上做batch,如果你能用bash,我给你了