前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Shell 命令行,生成当前文件夹目录索引 index.html 文件

Shell 命令行,生成当前文件夹目录索引 index.html 文件

作者头像
FungLeo
发布2018-01-08 14:45:12
2.1K0
发布2018-01-08 14:45:12
举报

Shell 命令行,生成当前文件夹目录索引 index.html 文件

做了一些原型图放在 git 上面,在服务器配置好自动拉取 git 中的文件,并配置一个 httpServer 服务跑起来,我想就可以在浏览器中直接访问这些生成好的原型 html 文件了。

但实际情况下,为了安全考虑,服务器关闭了目录索引,也就是说,如果目录中不存在 index.html 文件的话,就会出现 403 错误。

好吧,为了这点东西让打开服务器的目录索引很明显是不合适的。但总不至于我每次都得去写一个 index.html 文件吧,这些原型图的变化还是很频繁的。

所以,我想写一个脚本,来一劳永逸的解决问题。

代码如下:

代码语言:javascript
复制
files=$(ls)
main=index.html
cat /dev/null > $main
echo '<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>产品组各类原型图</title></head><body><h1>产品组各类原型图</h1><ul>' > $main
for i in $files; do
  if [ $i != 'index.html' ] && [ $i != 'getindex.sh' ] && [ $i != 'main.html' ]; then
    echo '<li><a href="'$i'">'$i'</a></li>' >> $main
  fi
done
echo '</ul></body></html>' >> $main
echo '首页文件生成完毕'

逻辑非常的简单:

  1. ls 获取当前文件夹下的所有文件
  2. 创建一个空的 index.html 文件,如果 index.html 文件存在,则将文件内容填充为空
  3. 写进去文件头部的固定的代码
  4. ls 来的文件名称进行循环,用判断去除不需要的文件名,其他的循环写入 index.html 文件
  5. 最后再写入固定的文件尾部内容
  6. 提示生成完毕

以上脚本均在 centos 和 MAC 下测试通过,在其他 linux 下可能会有稍许不同。 

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-10-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Shell 命令行,生成当前文件夹目录索引 index.html 文件
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档