问个遍历文件夹的问题

fonganzen 2008-04-08 11:05:27
我想得到一个文件夹下所有子文件夹的名称在以以下格式输出
比如文件夹下有 a、 b、 c三个子文件夹
输出 $dirs=./a ./b ./c这种格式该什么写shell
...全文
90 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mymtom 2008-04-08
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 fonganzen 的回复:]
to mymtom 提示 usage :find[path...][expression]
我是想得到./a空格./b空格./c这种格式的字段
麻烦你看下我另一个帖子问个bash 问题
[/Quote]
怎么会呢? 直接copy代码吧,怀疑楼主输入错误

$ cat lsdir
#! /bin/sh

dirs=`find . -depth 1 -type d ! -name "."`
echo '$dirs='${dirs}
$ ./lsdir
$dirs=./stdtime ./kk
$

blackbillow 2008-04-08
  • 打赏
  • 举报
回复

#!/bin/bash
val=`ls -l | grep ^d | awk '{print "./"$8}'`
echo $val
fonganzen 2008-04-08
  • 打赏
  • 举报
回复
to mymtom 提示 usage :find[path...][expression]
我是想得到./a空格./b空格./c这种格式的字段
麻烦你看下我另一个帖子问个bash 问题
mymtom 2008-04-08
  • 打赏
  • 举报
回复

#! /bin/sh

dirs=`find . -depth 1 -type d ! -name "."`
echo '$dirs='${dirs}

或者直接用ls -F | grep "/$"
fonganzen 2008-04-08
  • 打赏
  • 举报
回复
我只要第一层子目录 并且合并为./a空格./b空格./c这种格式的字段
mymtom 2008-04-08
  • 打赏
  • 举报
回复
find . -type d
fonganzen 2008-04-08
  • 打赏
  • 举报
回复
恩 ,问题解决拉 谢谢你们!
mymtom 2008-04-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 blackbillow 的回复:]
上面的错误我也遇到,我发现我电脑上要这样才行
Perl codefind.-maxdepth1-type d!-name"."
[/Quote]
楼上说的是对的. 应该用-maxdepth 1, 而不是-depth 1
blackbillow 2008-04-08
  • 打赏
  • 举报
回复
上面的错误我也遇到,我发现我电脑上要这样才行

find . -maxdepth 1 -type d ! -name "."

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧