2012-03-02 52 views
0

我正在尝试编写一个将字符串作为参数并删除包含该字符串的目录中的所有文件的bourne-shell脚本 我正在考虑使用查找并执行rm,但我只是开始的b-Shellbourne-shell查找 - 删除

find . -name $1 'core' -exec rm -i* {}\;

任何帮助,将不胜感激。谢谢。

+0

你的意思是文件名应该包含字符串还是文件内容应该包含字符串? – Mithrandir 2012-03-02 05:01:02

+0

@Mithrandir文件的名称对不起 – Glove 2012-03-02 05:09:12

回答

0

remove.sh脚本:

#!/bin/sh 
find . -type f -iname *$1* -exec rm -rf {} \; 

用法:

$remove.sh "main" 
+0

它实际上只删除文件的字符串它不会删除其余的文件 – Glove 2012-03-02 05:10:21

1

为什么不只是这一点:

#!/bin/sh 
rm *$1* 

中删除包含你的论点在当前目录下的文件。

0
find . -type f -name "$1" -delete 

这将递归到所有子目录中。如果你不想这样,那么使用rm或-maxdepth 1.