在 Ubuntu 中导出文件目录列表的多种方法

在 Ubuntu 中导出文件目录列表的多种方法

xiaojun
2025-10-14 / 0 评论 / 1 阅读 / 正在检测是否收录...

1. 使用 ls 命令(最常用)

基本列表
ls -l > file_list.txt

包含隐藏文件
ls -la > file_list.txt

按修改时间排序
ls -lt > file_list.txt

按文件大小排序(从大到小)
ls -lS > file_list.txt

递归列出子目录
ls -lR > file_list.txt

2. 使用 tree 命令(树状结构)

安装 tree(如果未安装)
sudo apt update && sudo apt install tree

基本树状结构
tree > file_list.txt

包含隐藏文件
tree -a > file_list.txt

显示文件权限和大小
tree -pugs > file_list.txt

只显示目录结构
tree -d > file_list.txt

指定深度
tree -L 2 > file_list.txt

3. 使用 find 命令(更详细的信息)

基本列表
find . -type f > file_list.txt

包含文件详细信息
find . -type f -ls > file_list.txt

按文件类型筛选
find . -name "*.txt" > txt_files.txt
find . -name "*.mp3" > mp3_files.txt

包含相对路径
find . -type f -printf "%P\n" > file_list.txt

4. 使用 du 命令(包含文件大小)

显示文件大小
du -ah > file_list.txt

按大小排序
du -ah | sort -hr > sorted_file_list.txt

只显示特定深度的文件
du -h --max-depth=1 > file_list.txt

5. 综合脚本(推荐)

创建一个包含详细信息的文件列表:
创建详细文件列表脚本
cat > export_file_list.sh << 'EOF'
#!/bin/bash
echo "文件目录列表 - 生成时间: $(date)" > file_list_detailed.txt
echo "======================================" >> file_list_detailed.txt
echo "" >> file_list_detailed.txt

文件统计
echo "文件统计:" >> file_list_detailed.txt
find . -type f | wc -l | xargs echo "总文件数: " >> file_list_detailed.txt
find . -type d | wc -l | xargs echo "总目录数: " >> file_list_detailed.txt
echo "" >> file_list_detailed.txt

详细文件列表
echo "详细文件列表:" >> file_list_detailed.txt
ls -laht --full-time > file_list_detailed.txt

echo "文件列表已导出到: file_list_detailed.txt"
EOF

赋予执行权限并运行
chmod +x export_file_list.sh
./export_file_list.sh

6. 特定目录导出

导出指定目录
ls -la /path/to/directory > directory_list.txt

导出家目录
ls -la ~/ > home_directory_list.txt

导出当前目录的MP3文件
find . -name "*.mp3" -type f > mp3_list.txt

7. 格式化输出

自定义格式(文件名、大小、修改时间)
ls -lh | awk '{print $9 "\t" $5 "\t" $6 " " $7 " " $8}' > formatted_list.txt

只显示文件名(每行一个)
ls -1 > simple_list.txt
选择适合你需求的方法,最常用的是 ls -la > file_list.txt 或 tree > file_list.txt。

0

评论

博主关闭了所有页面的评论