删除文件名包含指定字符串的文件 linux
时间: 2023-11-29 15:04:03 浏览: 1044
可以使用以下命令删除文件名包含指定字符串的文件:
```bash
find /path/to/directory -type f -name "*string*" -delete
```
其中,`/path/to/directory` 是要搜索的目录,`*string*` 是要搜索的字符串。这个命令会递归地搜索目录下所有文件名包含指定字符串的文件,并将其删除。请注意,这个命令非常危险,因为它会永久删除文件,所以请务必小心使用。
相关问题
Linux 批量替换不通目录下的文件,文件名相同的字符串为空
要批量替换不同目录下相同文件名的为空,您可以使用以下命令:
```shell
find /path/to/parent_directory -type f -name "filename.ext" -exec sed -i 's/search_string//' {} +
```
在上述命令中,您需要将 `/path/to/parent_directory` 替换为包含目标文件的父目录的路径。同时,将 `filename.ext` 替换为您要替换的文件的名称和扩展名。
该命令使用 `find` 命令来查找匹配指定文件名的文件,然后使用 `-exec` 选项和 `sed` 命令来执行替换操作。
在 `sed` 命令中,`s/search_string//` 表示将匹配到的 `search_string` 替换为空字符串,实现字符串的删除操作。
请确保在执行命令之前先确认目标文件的名称和路径,以免误操作删除其他内容。
linux删除包含字符串的文件
可以使用 `grep` 命令找出包含指定字符串的文件,然后使用 `rm` 命令删除这些文件。
例如,如果要删除当前目录下所有包含字符串 "example" 的文件,可以使用以下命令:
```
grep -lir "example" ./ | xargs rm
```
解释一下上面的命令:
- `grep -lir "example" ./` :在当前目录下递归搜索所有文件,找出包含字符串 "example" 的文件并输出它们的文件名(使用 `-l` 选项只输出文件名,使用 `-i` 选项忽略大小写)。
- `|` :将上一个命令的输出作为下一个命令的输入。
- `xargs rm` :将上一个命令的输出作为参数传递给 `rm` 命令,即删除这些文件。
注意:使用这个命令时需要谨慎,确保你要删除的文件是正确的,因为它会永久删除这些文件。
阅读全文