用shell写一个指定目录下是否存在.doc文件,如果存在则输出它们的名称
时间: 2024-03-23 11:40:03 浏览: 128
可以使用以下的shell脚本来实现:
```shell
#!/bin/bash
# 指定目录
dir_path="/path/to/directory"
# 查找.doc文件并输出名称
find "$dir_path" -name "*.doc" -type f -print 2>/dev/null | while read file_name
do
echo "$file_name"
done
```
解释一下这个脚本的每一行:
- 第1行:指定使用/bin/bash解释器执行此脚本。
- 第4行:指定要查找.doc文件的目录路径。
- 第7-10行:使用find命令查找指定目录下所有扩展名为.doc的文件,并输出它们的名称。
- 第8行:-name用于指定要查找的文件名,这里使用通配符*.doc表示查找所有扩展名为.doc的文件。
- 第9行:-type f表示查找普通文件而非目录或链接文件。
- 第10行:-print用于输出查找到的文件名,2>/dev/null用于将标准错误输出重定向到/dev/null,这样即使找不到文件也不会输出错误信息。
- 第11-14行:使用while循环读取find命令输出的每一个文件名,并输出它们的名称。
阅读全文