rm命令与exec命令组合使用,exec rm f
请问linux怎样删除某一个目录下所有指定文件名的文件
1、先使用SSH连接工具进入到linux系统中。
2、在linux系统中使用删除的命令是rm,是英文remove的缩写,使用参数比较简单,我们可以使用查询命令查看使用方式。
3、除了进入目录下直接输入文件名,rm命令后还可以跟文件的绝对路径名,这样就无需进入到目录下进行删除了。
4、我们也可以使用强制命令删除,一般情况下都是直接使用强制命令删除文件,且无需提示,方便快捷rm -f 文件名。
5、另外如果目录下都是需要删除的文件,也就是批量删除的话,可以使用rm -fr 目录的形式,删除目录下的一切文件例如 rm -fr ./*。
6、同时rm命令还支持文件的正则表达式匹配,可以模糊地进行删除操作,比如我们可以删除目录下的所有txt文件rm -f *.txt。
注意事项:
linux除了在服务器操作系统方面保持着强劲的发展势头以外,在个人电脑、嵌入式系统上都有着长足的进步。使用者不仅可以直观地获取该操作系统的实现机制,而且可以根据自身的需要来修改完善这个操作系统,使其最大化地适应用户的需要。
php中的exec问题
exec是执行参数中的命令,本例中的:
rm是删除文件的命令,rm -rf $counterFile表示删除$counterFile以及它里面的所有文件和目录(如果是目录的话)。
echo是显示信息的命令,echo $num $counterFile表示显示$num的内容到文件$counterFile里面。
在linux如何批量删除多级目录下同一格式的文件呢?
在linux批量删除多级目录下同一格式的文件,可采用find + exec命令组合:
如在删除old目录下的,所有子目录中,后缀为.l的文件方法为:
find old -type f -name "*.l" -exec rm -f {} \;
说明:
old:待查找的开始目录,搜索其下的子目录
-type f : 文件类型为普通文件 ? 若查找的目标文件是目录,则用 -type d
-name "*.l" : ?表示文件名与"*.l"匹配,双引号不能少!
rm -f {} : 删除时,不提示,{}表示查找到的文件