免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2567 | 回复: 8
打印 上一主题 下一主题

求一个bash脚本 能把一个文件夹下的所有路径写到一个文本里面 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-18 10:56 |只看该作者 |倒序浏览
我是linux shell的初学者,希望会这个脚本的人帮下忙

论坛徽章:
0
2 [报告]
发表于 2008-01-18 11:04 |只看该作者
所有路径啥意思

这样?
cd your dir
find . -type d > text.txt

论坛徽章:
0
3 [报告]
发表于 2008-01-18 12:11 |只看该作者
du | awk '{print $2}' >text.txt

所有文件?

论坛徽章:
0
4 [报告]
发表于 2008-01-18 12:41 |只看该作者
如果有tree命令就方便了,我一般用tree -if

论坛徽章:
0
5 [报告]
发表于 2008-01-18 13:20 |只看该作者
谢谢各位 不要文件 只要到目录就行

论坛徽章:
0
6 [报告]
发表于 2008-01-18 15:16 |只看该作者
find -name '*' -type d > FILE

论坛徽章:
0
7 [报告]
发表于 2008-01-18 15:39 |只看该作者
在你要统计的目录下,

find . -type d | awk -F"." '{print $2}' > aaa

文件目录路径如下:

find . -type f | awk -F"." '{print $2}' > bbb

[ 本帖最后由 huifeideluotuo 于 2008-1-18 15:49 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2008-01-18 15:46 |只看该作者
如果是需要全路径,那么
find 目录 -type d >dir.file

如果只需要子目录的名称,不需要路径

find 目录 -type d -printf "%f\n" >dir.file
-printf "%f"  是显示文件名,不包含父目录名,加\n是保证每个文件一行。

论坛徽章:
0
9 [报告]
发表于 2008-01-18 15:54 |只看该作者
如果是用纯bash的脚本的话,可以这么做

  1. function mydir(){
  2.   local dname
  3.   [ ! -d "$1" ] && return 1
  4.   echo "$1"
  5.   for dname in "$1"/*
  6.   do
  7.      [ -d "$dname" ] && mydir "$dname"
  8.   done
  9.   return 0
  10. }

  11. mydir 目录
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP