Lam*_*aMo 1 directory file-management delete
如何删除多个-
名称中包含多个文件夹的文件夹?
例如:
e97bf913-5759-4fff-bdaf-2f931b53a432/
39f953c5-dab0-420e-a650-a50a30f48097/
Run Code Online (Sandbox Code Playgroud)
rm -r *-*-*-*-*
Run Code Online (Sandbox Code Playgroud)
警告:这将删除与此方案匹配的每个文件。所以文件如:
system-file-separated-by-minus
Run Code Online (Sandbox Code Playgroud)
也会被删除。
'*' 部分代表所有字符(零、一个或多个字符),直到下一个给定,在这种情况下用减号分隔。如果您知道您的文件 - 前面有 8 个字符,下一个前面有 4 个字符,您可以说:
rm -r ????????-????-????-????-????????????
Run Code Online (Sandbox Code Playgroud)
每一个 ?代表任何字符。这将删除与您的方案匹配的所有文件。但是,您可能不想要的具有相同方案的文件也会被删除,因此请先检查这一点。
图案
*-*-*/
Run Code Online (Sandbox Code Playgroud)
匹配具有两个或多个连字符的目录。的*
任何字符串(零个或多个字符)匹配。
如果您只想匹配不应以连字符开头和结尾的目录名称(如您的示例中所示),您可以使用
[!-]*-*-*[!-]/
Run Code Online (Sandbox Code Playgroud)
反而。该[!-]
不是(匹配任何字符!
),一个连字符。
跑
ls -d [!-]*-*-*[!-]/
Run Code Online (Sandbox Code Playgroud)
首先看看这些是不是你要删除的。然后运行
rm -r [!-]*-*-*[!-]/
Run Code Online (Sandbox Code Playgroud)
递归删除它们。如果您确实需要强制删除,请添加-f
到命令中。
归档时间: |
|
查看次数: |
212 次 |
最近记录: |