shell脚本递归文件名
时间: 2024-04-16 18:23:19 浏览: 105
shell递归输出文件名和目录名的方法
在Shell脚本中,可以使用递归的方式获取文件名。下面是一个示例代码,用于递归获取指定目录下的所有文件名:
```shell
#!/bin/bash
function recursive_files() {
local dir=$1
for file in "$dir"/*; do
if [ -f "$file" ]; then
echo "$file"
elif [ -d "$file" ]; then
recursive_files "$file"
fi
done
}
# 调用递归函数,传入目标目录作为参数
recursive_files "/path/to/directory"
```
上述代码定义了一个名为`recursive_files`的递归函数,该函数接受一个目录作为参数。在函数内部,使用`for`循环遍历目录下的所有文件和子目录。如果是文件,则直接输出文件名;如果是目录,则递归调用`recursive_files`函数。
你可以将`/path/to/directory`替换为你想要获取文件名的目录路径。运行脚本后,它将递归地输出指定目录下的所有文件名。
阅读全文