当前位置: 首页 > news >正文

做鞋原料网站竞价网站

做鞋原料网站,竞价网站,做百度网站,杭州服务器租用文章目录 使用ls实现tree使用find实现tree 使用ls实现tree 实现思路 使用ls -F 打印文件类型,如果是目录后面跟/,如果是可执行文件后面跟*;使用grep -v /$ 筛选文件排除目录,-v为反向筛选;使用grep /$ 仅筛选目录&am…

文章目录

  • 使用ls实现tree
  • 使用find实现tree

使用ls实现tree

实现思路

  1. 使用ls -F 打印文件类型,如果是目录后面跟/,如果是可执行文件后面跟*;
  2. 使用grep -v /$ 筛选文件排除目录,-v为反向筛选;
  3. 使用grep /$ 仅筛选目录;
  4. ${files[@]} 是获取数组的全部元素;
  5. 获取文件直接打印,获取目录后,打印目录,拼接父目录给当前目录(因为shell执行总是在当前目录,如果只传目录,会报错找不到目录),然后递归打印。
    代码如下:
#!/bin/bash
# 将shell默认的三种分隔符中的空格分隔符剔除,解决文件名有空格情况下的问题
IFS=$'\t\n'# 函数:递归地打印目录内容
print_tree() {local indent=$1local dir=$2local files=($(ls -F $dir | grep -v /$))local dirs=($(ls -F $dir | grep  /$))# 打印当前目录的文件for file in "${files[@]}"; doecho "${indent}${file}"done# 递归打印目录for subdir in "${dirs[@]}"; doecho "${indent}${subdir}"subdir="${dir}/${subdir}"print_tree "|……${indent}" ${subdir}done
}# 从当前目录开始打印树状图
print_tree "" "."

测试一下,输出如下:

a/
|……b/
|……|……c/
|……|……d/
|……|……f/
|……c/
|……|……f/
|……|……|……test*
|……|……|……tt.txt

当然这种方法虽然简单,但是文件是可执行文件,那么在文件名后会跟一个*,风格不统一,下面再介绍一种打印方式。

使用find实现tree

实现思路:
find 命令加参数-type f 可以仅查找文件排除掉目录,但是查出来的文件带父目录,maxdepth可以指定查找深度,1表示只在本层目录中查找;
basename 命令可以删除指定结尾的后缀,也能打印除了/的最后一部分字符。比如basename /usr/local/Centos输出结果为Centos,但是如果目录名有空格就不会得到预期的效果;
tr 命令可以替换字符,比如可以将目录名中的空格替换为/,使得basename可以得到预期效果;
代码如下:

#!/bin/bash
IFS=$'\t\n'
# 函数:递归地打印目录内容
print_tree() {local indent=$1local dir=$2local files=($(find $dir -maxdepth 1 -type f ))local dirs=($(find $dir -maxdepth 1 -type d))if [ "${#dirs[@]}" -gt "0" ];thenunset dirs[0]fi# 打印当前目录的文件for file in "${files[@]}"; doecho "${indent}$(basename $(echo $file | tr ' ' '\'))"done# 递归打印目录for subdir in "${dirs[@]}"; doecho "${indent}$(basename $(echo $subdir | tr ' ' '\ '))"print_tree "|……${indent}" ${subdir}done
}# 从当前目录开始打印树状图
print_tree "" "."

测试一下,输出如下:

a
|……c
|……|……f
|……|……|……test
|……|……|……tt.txt
|……b
|……|……f
|……|……c
|……|……d

快一起试试吧~

http://www.khdw.cn/news/63671.html

相关文章:

  • 网站建设分金手指排名十八百度登录入口官网
  • 天津网站制作维护快速seo关键词优化方案
  • 响应式网站几个断点网络广告营销的案例
  • 做网站找外包公司要要搞清楚什么网络热词的利弊
  • 战鼓的h5网站如何做网络营销推广工具有哪些?
  • 做网站的软件公司互联网广告营销
  • 建设一个网站需要哪些知识做百度推广的网络公司广州
  • 网站上传源码百度seo算法
  • 重庆建筑网站详情页页面页面
  • 帝国网站管理系统前台哈尔滨seo公司
  • 在批发网站做一件代发中国搜索引擎有哪些
  • 大连哪家网站技术开发公司好营销推广费用方案
  • 微信打卡小程序怎么弄武汉seo工厂
  • 网站备案几年备案一次优化网站最好的刷排名软件
  • 青岛网站建设哪家好怎样免费制作网页
  • wordpress美女主题下载seo优化网络推广
  • 什么网站可以做微传单外呼系统电销
  • 品物设计集团汕头seo管理
  • wordpress自定义数据西安企业seo外包服务公司
  • 单页成品网站域名信息查询网站
  • 虚拟网站管理系统怎样做网站
  • 有个做搞笑视频的网站百度小说搜索风云榜总榜
  • 广州公共资源西安seo外包优化
  • php做网站搜索框链接网
  • 栾城住房和城乡建设局网站电商软文范例300字
  • 交友网站的设计与实现网站运营专员
  • 网站建设与维护试卷论文深圳推广公司介绍
  • seo怎么做优化方案seo网站优化系统
  • 成都注册网站公司seo优化排名易下拉效率
  • 网站建设网站制作公司网页设计与制作项目教程