From 47226e90457e915d012ffbac9817e3c6cc11438f Mon Sep 17 00:00:00 2001 From: mbinary Date: Tue, 22 Jan 2019 00:11:55 +0800 Subject: [PATCH] Delete docs and modified txt files that contain my old blog url --- README.md | 11 +- docs/index.html | 282 ----------- .../index.html" | 36 -- .../index.html" | 37 -- .../index.html" | 38 -- .../index.html" | 35 -- .../index.html" | 38 -- .../index.html" | 38 -- .../index.html" | 39 -- .../index.html" | 35 -- .../slides/index.html" | 50 -- .../index.html" | 48 -- .../index.html" | 43 -- .../index.html" | 35 -- .../slides/index.html" | 43 -- .../index.html" | 50 -- utils/README.md | 36 +- utils/backup-config.py | 410 ++++++++-------- utils/checkBigFile.py | 64 +-- utils/config.py | 452 +++++++++--------- utils/genReadme.py | 42 +- utils/genZipFile.py | 106 ++-- utils/getSize.py | 60 +-- utils/md_tree_links.py | 90 ++-- utils/pinyinSort.py | 40 +- ...37\346\234\253\350\257\225\351\242\230.md" | 10 +- 26 files changed, 656 insertions(+), 1512 deletions(-) delete mode 100644 docs/index.html delete mode 100644 "docs/\344\271\246\347\261\215\346\216\250\350\215\220/index.html" delete mode 100644 "docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/index.html" delete mode 100644 "docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\344\272\244\345\223\215\344\271\220\350\265\217\346\236\220/index.html" delete mode 100644 "docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\346\212\200\346\234\257,\350\264\242\345\257\214\344\270\216\346\226\207\346\230\216\345\217\230\350\277\201/index.html" delete mode 100644 "docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\351\207\215\350\246\201\346\200\235\346\203\263\346\246\202\350\256\272/index.html" delete mode 100644 "docs/\345\267\245\345\205\267\347\261\273/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/slides/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/\345\256\217\350\247\202\347\273\217\346\265\216\345\255\246/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/\345\270\202\345\234\272\350\220\245\351\224\200/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/slides/index.html" delete mode 100644 "docs/\347\273\217\347\256\241\347\261\273/\347\224\237\344\272\247\344\270\216\350\277\220\344\275\234\347\256\241\347\220\206/index.html" diff --git a/README.md b/README.md index c72810da..810eebc9 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ ## HTTPS - [github 网页](#课程目录) -- [脚本生成的网页](https://mbinary.coding.me/ustc-cs/) +- [脚本生成的网页](https://mbinary.github.io/ustc-cs/) 脚本生成的网页中直接包含了下载链接, 比 github 方便一点. 而且在移动端下载二进制文件, 在github 需要点击两次(第一次显示`This file is binary and cannot be displayed inline`,需要再点`open binary file`/`Download`才行),后者只需要一次即可下载, 对于大的二进制文件, github 移动端的不能直接下载, 需要切换成 `Desktop Version` 才有 下载按钮. @@ -115,15 +115,6 @@ FTP 更快, 可以下载整个目录, 是最好的选择, 只是更新频率低 **根据拼音字母排序** * [.](.) - * [docs](./docs) - * [工具类](./docs/工具类) - * [经管类](./docs/经管类) - * [计算机与信息类](./docs/计算机与信息类) - * [人文社科类](./docs/人文社科类) - * [书籍推荐](./docs/书籍推荐) - * [数学类](./docs/数学类) - * [网盘资源](./docs/网盘资源) - * [物理类](./docs/物理类) * [工具类](./工具类) * [经管类](./经管类) * [宏观经济学](./经管类/宏观经济学) diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index aa6f5cc1..00000000 --- a/docs/index.html +++ /dev/null @@ -1,282 +0,0 @@ - - - - - - - - - - -

-     : - // -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

-

Read Me

- -

中国科学技术大学课程资源

-
-

这是一个收集 中国科学技术大学课程资源的(主要是计算机学院的,也有其他课程,公选课,自由选修等)的 repo, 包括课程电子版 书籍,参考书,slides(ppt), 考试试卷,学习心得,某些书的答案。

-
-

目录

- - - - - -

公告

- -

资料下载

-

FTP

-
    -
  1. FTP/FTPS:
  2. -
  3. 地址:ftp.ustclug.org;
  4. -
  5. 路径:/ebook/USTC-CS-Courses-Resource;
  6. -
  7. 用户名:ftp;
  8. -
  9. 密码:ftp;
  10. -
  11. SFTP (Secure File Transfer Protocol):
  12. -
  13. 地址:ftp.ustclug.org;
  14. -
  15. 路径:/ebook/USTC-CS-Courses-Resource;
  16. -
  17. 用户名:ftp;
  18. -
  19. 密码:ftp;
  20. -
  21. AFP (Apple Filing Protocol)
  22. -
  23. 地址:afp://ftp.ustclug.org/;
  24. -
  25. 路径:/ebook/USTC-CS-Courses-Resource;
  26. -
  27. Connect As Guest
  28. -
-

HTTPS

-
    -
  1. github 网页
  2. -
  3. 浏览这里的网页. 后者可 以解决 github 的如下不好体验
  4. -
  5. 如果想下载二进制文件, 在github 需要点击两次(第一次显示This file is binary and cannot be displayed inline,需要再点open binary file/Download才行), 而在文件浏览版只需要一次即可下载
  6. -
  7. 对于大的二进制文件, github 移动端的不能直接下载, 需要切换成 Desktop Version 才有 下载按钮.
  8. -
-

FTP 下载是最方便, 快速的, 还可以下载整个目录

-

贡献者们

-

课程结构

-

每门课程大致结构如下,有些栏目可能没有,也可以自己添加认为合理的栏目 - slides: 主要是 ppt 文件类型(若有多个老师,则在课程目录建立slides-teacherName1, slides-teacherName2...) - homework & lab(一个或两个目录) - 教材与参考书可以直接放在课程目录下 - 课程主页及其他链接资源(记在 课程/README.md 中) - 心得与经验 - students(同学们上传的自己的一些资料,作品,每个同学新建一个目录) -* 非zip, 非以'.'开头的文件多于 3 个的目录下都有个 zip 文件:-DIRECTORY 目录下的\d+个文件.zip,包含当前目录下的一些文件, 这样方便大家一键下载. (在 git commit前, 运行 ./before__commit.sh可以自动生成)

-

数据结构课程

-
├ lab
-│   ├ bankSimulation
-│   ├ huffman
-│   ├ navigation
-│   ├ polynomial
-│   └ README.md
-├ slides
-│   ├ ch10-排序.ppt
-│   ├ ch1-绪论.ppt
-│   ├ ch2-线性表.ppt
-│   ├ ch3.ppt
-│   ├ ch6.pps
-│   ├ ch7.pps
-│   ├ ch9.pps
-│   ├ 数据结构c语言版严蔚敏PPT.ppt
-│   └ -计算机与信息类-数据结构-slides目录下的8个文件.zip
-├ students
-│   ├ mbinary
-│   └ README.md
-├ 数据结构c_严蔚敏.pdf
-└ 数据结构习题集答案(C语言版严蔚敏)_ca332.pdf
-
- - -

课程目录

-

根据拼音字母排序

- -

管理投稿

-

欢迎大家的参与与贡献

-

投稿方式

-

帮忙上传

-

可以发给我或者其他同学帮忙上传

-

网页操作

- -

用命令行

-

对于用命令行的同学,提醒一下这个仓库很大(2018-5-2时已有 3G左右) -所以如果直接 clone 很慢。 -可以使用 sparse-checkout, 只下载你指定的目录

-

首先用网页操作,创建你想要的目录(已有的可以直接用), 如在公选课目录下创建人工智障, -然后在 cli 执行

-
mkdir ustc-courses  #文件夹名可以自己取
-cd ustc-courses
-git init
-git remote add -f origin  git@github.com:mbinary/USTC-CS-Courses-Resource.git
-git config core.sparsecheckout true
-echo "公选课/人工智障"  >> .git/info/sparse-checkout  #这里工作目录就是在那个 repo 主页下
-
-#如果还有其他目录,都像上面一样加入即可,如 `echo  "大二上/ICS/ppt" >> .git/info/sparse-checkout`
-#只需记住的是 加入的目录应该在远程仓库存在,否则报错“error: Sparse checkout leaves no entry on the working directory”
-
-git pull origin master
-git remote add upstream git@github.com:mbinary/USTC-CS-Courses-Resource.git
-
- - -

建议: 如果没有较大的改动, 或者在改动之前,可以删除掉以前 fork 的仓库 重新 fork

-

更新内容后

-
git fetch upstream/master
-git merge upstream/master
-
- - -

投稿建议

- -

管理工作

-

若想帮忙管理 (collaborator), 请联系我, 非常感谢你的参与与贡献

- -

版权声明

-

所有资源,著作权归原作者所有,此 repo 的目的是学习交流. -如果使用者的不当使用造成不良后果,与此 repo 的贡献者无关。

- - diff --git "a/docs/\344\271\246\347\261\215\346\216\250\350\215\220/index.html" "b/docs/\344\271\246\347\261\215\346\216\250\350\215\220/index.html" deleted file mode 100644 index d9d48b41..00000000 --- "a/docs/\344\271\246\347\261\215\346\216\250\350\215\220/index.html" +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - -

-     : - //书籍推荐 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/index.html" "b/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/index.html" deleted file mode 100644 index 40ac37c6..00000000 --- "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/index.html" +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -

-     : - //人文社科类 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\344\272\244\345\223\215\344\271\220\350\265\217\346\236\220/index.html" "b/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\344\272\244\345\223\215\344\271\220\350\265\217\346\236\220/index.html" deleted file mode 100644 index 22b8eaf4..00000000 --- "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\344\272\244\345\223\215\344\271\220\350\265\217\346\236\220/index.html" +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - -

-     : - //人文社科类/交响乐赏析 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\346\212\200\346\234\257,\350\264\242\345\257\214\344\270\216\346\226\207\346\230\216\345\217\230\350\277\201/index.html" "b/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\346\212\200\346\234\257,\350\264\242\345\257\214\344\270\216\346\226\207\346\230\216\345\217\230\350\277\201/index.html" deleted file mode 100644 index 7d55dca9..00000000 --- "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\346\212\200\346\234\257,\350\264\242\345\257\214\344\270\216\346\226\207\346\230\216\345\217\230\350\277\201/index.html" +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - -

-     : - //人文社科类/技术,财富与文明变迁 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\351\207\215\350\246\201\346\200\235\346\203\263\346\246\202\350\256\272/index.html" "b/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\351\207\215\350\246\201\346\200\235\346\203\263\346\246\202\350\256\272/index.html" deleted file mode 100644 index 227d87cf..00000000 --- "a/docs/\344\272\272\346\226\207\347\244\276\347\247\221\347\261\273/\351\207\215\350\246\201\346\200\235\346\203\263\346\246\202\350\256\272/index.html" +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - -

-     : - //人文社科类/重要思想概论 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\345\267\245\345\205\267\347\261\273/index.html" "b/docs/\345\267\245\345\205\267\347\261\273/index.html" deleted file mode 100644 index 9f423f3e..00000000 --- "a/docs/\345\267\245\345\205\267\347\261\273/index.html" +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - -

-     : - //工具类 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/index.html" deleted file mode 100644 index 79dc1b95..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/index.html" +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - -

-     : - //经管类 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/index.html" deleted file mode 100644 index 08fe89ba..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/index.html" +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - -

-     : - //经管类/会计学原理 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/slides/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/slides/index.html" deleted file mode 100644 index 4913a931..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/\344\274\232\350\256\241\345\255\246\345\216\237\347\220\206/slides/index.html" +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - -

-     : - //经管类/会计学原理/slides -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/\345\256\217\350\247\202\347\273\217\346\265\216\345\255\246/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/\345\256\217\350\247\202\347\273\217\346\265\216\345\255\246/index.html" deleted file mode 100644 index b4585741..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/\345\256\217\350\247\202\347\273\217\346\265\216\345\255\246/index.html" +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - -

-     : - //经管类/宏观经济学 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/\345\270\202\345\234\272\350\220\245\351\224\200/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/\345\270\202\345\234\272\350\220\245\351\224\200/index.html" deleted file mode 100644 index 19432a08..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/\345\270\202\345\234\272\350\220\245\351\224\200/index.html" +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - -

-     : - //经管类/市场营销 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/index.html" deleted file mode 100644 index 637f0f2b..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/index.html" +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - -

-     : - //经管类/微观经济学 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/slides/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/slides/index.html" deleted file mode 100644 index ff91b393..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/\345\276\256\350\247\202\347\273\217\346\265\216\345\255\246/slides/index.html" +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - -

-     : - //经管类/微观经济学/slides -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git "a/docs/\347\273\217\347\256\241\347\261\273/\347\224\237\344\272\247\344\270\216\350\277\220\344\275\234\347\256\241\347\220\206/index.html" "b/docs/\347\273\217\347\256\241\347\261\273/\347\224\237\344\272\247\344\270\216\350\277\220\344\275\234\347\256\241\347\220\206/index.html" deleted file mode 100644 index b2efadbc..00000000 --- "a/docs/\347\273\217\347\256\241\347\261\273/\347\224\237\344\272\247\344\270\216\350\277\220\344\275\234\347\256\241\347\220\206/index.html" +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - -

-     : - //经管类/生产与运作管理 -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- - - diff --git a/utils/README.md b/utils/README.md index 5888ab8e..10b3ee91 100644 --- a/utils/README.md +++ b/utils/README.md @@ -1,18 +1,18 @@ -# 一些用来管理课程资源的脚本 -## genIndex.py -产生网页浏览目录, 索引, 通过os.walk 在每个目录下(过滤掉.开头的目录)产生index.html, 内容是当前目录下的文件夹列表与文件列表 - -## genZipFile.py -在每个目录下(过滤掉.开头的目录,下同)产生全部文件(文件数大于3)的zipfile,方便一键下载) - -## checkBigFile.py -递归检查某个目录下的所有文件,如果大于100mb,就移动到 WALKDIR/.bigFile - -## config.py -配置文件 - -## md_tree_link.py -遍历一个目录, 产生 markdown 格式的树状目录的链接 - -## pinyinSort.py -根据拼音字母 来排序 +# 一些用来管理课程资源的脚本 +## genIndex.py +产生网页浏览目录, 索引, 通过os.walk 在每个目录下(过滤掉.开头的目录)产生index.html, 内容是当前目录下的文件夹列表与文件列表 + +## genZipFile.py +在每个目录下(过滤掉.开头的目录,下同)产生全部文件(文件数大于3)的zipfile,方便一键下载) + +## checkBigFile.py +递归检查某个目录下的所有文件,如果大于100mb,就移动到 WALKDIR/.bigFile + +## config.py +配置文件 + +## md_tree_link.py +遍历一个目录, 产生 markdown 格式的树状目录的链接 + +## pinyinSort.py +根据拼音字母 来排序 diff --git a/utils/backup-config.py b/utils/backup-config.py index 5439241c..b52de02d 100644 --- a/utils/backup-config.py +++ b/utils/backup-config.py @@ -1,205 +1,205 @@ -# coding: utf-8 -import os.path - -HOST = 'https://raw.githubusercontent.com/' -OWNER = 'mbinary' #'USTC-Courses' #'mbinary'# -REPO = 'USTC-CS-Courses-Resource' -BRANCH = 'master' - - -PATH = os.path.join(HOST,OWNER,REPO,BRANCH) - - -WALKDIR = os.path.abspath('.') - -indexFileDirDic = {'/mnt/d/blogfile/blog/source/ustc-cs':'index.html','docs':'README.md'} - -IGNORE = ['utils','docs'] - -HTML = ''' - - - - - - - - - -

-     : - /{cur} -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- -

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

- {readme} - - -''' - -README=r''' -# 中国科学技术大学课程资源 ->这是一个收集 中国科学技术大学课程资源的(主要是计算机学院的,也有其他课程,公选课,自由选修等)的 repo, 包括课程电子版 书籍,参考书,slides(ppt), 考试试卷,学习心得,某些书的答案。 - - -# 目录 - - -* [公告](#公告) -* [资料下载](#资料下载) -* [贡献者们](#贡献者们) -* [课程结构](#课程结构) -* [课程目录](#课程目录) -* [管理投稿](#管理投稿) - * [投稿方式](#投稿方式) - * [帮忙上传](#帮忙上传) - * [网页操作](#网页操作) - * [用命令行](#用命令行) - * [投稿建议](#投稿建议) - * [管理工作](#管理工作) -* [版权声明](#版权声明) - - - -# 公告 -* 欢迎 star,fork. 欢迎反馈与建议(通过 [issue](issues/new),mail, 或者 [qq](http://wpa.qq.com/msgrd?v=3&uin=414313516&site=qq&menu=yes)) -* 可以通过在此页面搜索课程名快速定位,下面的课程目录是经过**拼音排序**过的,方便查找 -* 可以添加其他计算机非课程资源, 欢迎大家的参与与贡献 (。・∀・)ノ - -# 资料下载 -## FTP -1. FTP/FTPS: - - 地址:ftp.ustclug.org; - - 路径:/ebook/USTC-CS-Courses-Resource; - - 用户名:ftp; - - 密码:ftp; -2. SFTP (Secure File Transfer Protocol): - - 地址:ftp.ustclug.org; - - 路径:/ebook/USTC-CS-Courses-Resource; - - 用户名:ftp; - - 密码:ftp; -3. AFP (Apple Filing Protocol) - - 地址:afp://ftp.ustclug.org/; - - 路径:/ebook/USTC-CS-Courses-Resource; - - Connect As Guest - -## HTTPS -- github 网页 -- [脚本生成的网页](https://mbinary.coding.me/ustc-cs/) - -脚本生成的网页中直接包含了下载链接, 比 github 方便一点. 而且在移动端下载二进制文件, 在github 需要点击两次(第一次显示`This file is binary and cannot be displayed inline`,需要再点`open binary file`/`Download`才行),后者只需要一次即可下载, 对于大的二进制文件, github 移动端的不能直接下载, 需要切换成 `Desktop Version` 才有 下载按钮. - -FTP 更快, 可以下载整个目录, 是最好的选择, 只是更新频率低于网页 - -# [贡献者们](graphs/contributors) - -# 课程结构 -每门课程大致结构如下,有些栏目可能没有,也可以自己添加认为合理的栏目 -* slides: 主要是 ppt 文件类型(若有多个老师,则在课程目录建立slides-teacherName1, slides-teacherName2...) -* homework & lab(一个或两个目录) -* 教材与参考书可以直接放在课程目录下 -* 课程主页及其他链接资源(记在 课程/README.md 中) -* 心得与经验 -* students(同学们上传的自己的一些资料,作品,每个同学新建一个目录) -* 非zip, 非以'.'开头的文件多于 3 个的目录下都有个 zip 文件:`-DIRECTORY 目录下的\d+个文件.zip`,包含当前目录下的一些文件, 这样方便大家一键下载. (在 git commit前, 运行 `./before__commit.sh`可以自动生成) - -如`数据结构`课程 - -``` -├ lab -│   ├ bankSimulation -│   ├ huffman -│   ├ navigation -│   ├ polynomial -│   └ README.md -├ slides -│   ├ ch10-排序.ppt -│   ├ ch1-绪论.ppt -│   ├ ch2-线性表.ppt -│   ├ ch3.ppt -│   ├ ch6.pps -│   ├ ch7.pps -│   ├ ch9.pps -│   ├ 数据结构c语言版严蔚敏PPT.ppt -│   └ -计算机与信息类-数据结构-slides目录下的8个文件.zip -├ students -│   ├ mbinary -│   └ README.md -├ 数据结构c_严蔚敏.pdf -└ 数据结构习题集答案(C语言版严蔚敏)_ca332.pdf -``` - - -# 课程目录 -**根据拼音字母排序** - -{index} - -# 管理投稿 -欢迎大家的参与与贡献 - -## 投稿方式 - -### 帮忙上传 -可以发给我或者其他同学帮忙上传, 或者提 issue - -### 网页操作 -* 用网页或者[桌面版](https://desktop.github.com/)直接操作,fork and pull request, - 操作方式可以参考 [这里](https://blog.csdn.net/qq_29277155/article/details/51048990)和[这里](https://blog.csdn.net/zhangw0_0/article/details/50667891) ,[介绍pr操作](https://blog.csdn.net/huutu/article/details/51018317) - -### 用命令行 -对于用命令行的同学,提醒一下这个仓库很大(2018-5-2时已有 3G左右) -所以如果直接 clone 很慢。 -可以使用 sparse-checkout, 只下载你指定的目录 - -首先用网页操作,创建你想要的目录(已有的可以直接用), 如在公选课目录下创建`人工智障`, -然后在 cli 执行 -```shell -mkdir ustc-courses #文件夹名可以自己取 -cd ustc-courses -git init -git remote add -f origin git@github.com:mbinary/USTC-CS-Courses-Resource.git -git config core.sparsecheckout true -echo "公选课/人工智障" >> .git/info/sparse-checkout #这里工作目录就是在那个 repo 主页下 - -#如果还有其他目录,都像上面一样加入即可,如 `echo "大二上/ICS/ppt" >> .git/info/sparse-checkout` -#只需记住的是 加入的目录应该在远程仓库存在,否则报错“error: Sparse checkout leaves no entry on the working directory” - -git pull origin master -git remote add upstream git@github.com:mbinary/USTC-CS-Courses-Resource.git -``` -建议: 如果没有较大的改动, 或者在改动之前,可以删除掉以前 fork 的仓库 重新 fork - -更新内容后 -```shell -git fetch upstream/master -git merge upstream/master -``` - -## 投稿建议 -* github 上不能直接上传大于 100mb 的文件. 对于超过 100 mb 的文件, 可以存在云盘,然后将链接写在[这里](网盘资源/README.md) -* 若是自己原创的作品,可以在文件名后加上后缀,如`-16- 计 - 王小二`, 文件里也可以写上联系方式,当然不写也行。 -* 注意资源大多是二进制文件, 多次改动会使 git 重新上传, 即使 `mv`, 也会使本地仓库重新上传到远程仓库,所以在没有必要的情况下, 不要对二进制文件做任何改动. - - - -# 版权声明 -所有资源,著作权归原作者所有,此 repo 的目的是**学习交流**. -如果使用者的不当使用造成不良后果,与此 repo 的贡献者无关。 -''' +# coding: utf-8 +import os.path + +HOST = 'https://raw.githubusercontent.com/' +OWNER = 'mbinary' #'USTC-Courses' #'mbinary'# +REPO = 'USTC-CS-Courses-Resource' +BRANCH = 'master' + + +PATH = os.path.join(HOST,OWNER,REPO,BRANCH) + + +WALKDIR = os.path.abspath('.') + +indexFileDirDic = {'/mnt/d/blogfile/blog/source/ustc-cs':'index.html','docs':'README.md'} + +IGNORE = ['utils','docs'] + +HTML = ''' + + + + + + + + + +

+     : + /{cur} +

+
根据拼音排序
+
+

Directories

+ + +

Files

+ + +
+   Github +   Feedback +
+ +

如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github

+ {readme} + + +''' + +README=r''' +# 中国科学技术大学课程资源 +>这是一个收集 中国科学技术大学课程资源的(主要是计算机学院的,也有其他课程,公选课,自由选修等)的 repo, 包括课程电子版 书籍,参考书,slides(ppt), 考试试卷,学习心得,某些书的答案。 + + +# 目录 + + +* [公告](#公告) +* [资料下载](#资料下载) +* [贡献者们](#贡献者们) +* [课程结构](#课程结构) +* [课程目录](#课程目录) +* [管理投稿](#管理投稿) + * [投稿方式](#投稿方式) + * [帮忙上传](#帮忙上传) + * [网页操作](#网页操作) + * [用命令行](#用命令行) + * [投稿建议](#投稿建议) + * [管理工作](#管理工作) +* [版权声明](#版权声明) + + + +# 公告 +* 欢迎 star,fork. 欢迎反馈与建议(通过 [issue](issues/new),mail, 或者 [qq](http://wpa.qq.com/msgrd?v=3&uin=414313516&site=qq&menu=yes)) +* 可以通过在此页面搜索课程名快速定位,下面的课程目录是经过**拼音排序**过的,方便查找 +* 可以添加其他计算机非课程资源, 欢迎大家的参与与贡献 (。・∀・)ノ + +# 资料下载 +## FTP +1. FTP/FTPS: + - 地址:ftp.ustclug.org; + - 路径:/ebook/USTC-CS-Courses-Resource; + - 用户名:ftp; + - 密码:ftp; +2. SFTP (Secure File Transfer Protocol): + - 地址:ftp.ustclug.org; + - 路径:/ebook/USTC-CS-Courses-Resource; + - 用户名:ftp; + - 密码:ftp; +3. AFP (Apple Filing Protocol) + - 地址:afp://ftp.ustclug.org/; + - 路径:/ebook/USTC-CS-Courses-Resource; + - Connect As Guest + +## HTTPS +- github 网页 +- [脚本生成的网页](https://mbinary.github.io/ustc-cs/) + +脚本生成的网页中直接包含了下载链接, 比 github 方便一点. 而且在移动端下载二进制文件, 在github 需要点击两次(第一次显示`This file is binary and cannot be displayed inline`,需要再点`open binary file`/`Download`才行),后者只需要一次即可下载, 对于大的二进制文件, github 移动端的不能直接下载, 需要切换成 `Desktop Version` 才有 下载按钮. + +FTP 更快, 可以下载整个目录, 是最好的选择, 只是更新频率低于网页 + +# [贡献者们](graphs/contributors) + +# 课程结构 +每门课程大致结构如下,有些栏目可能没有,也可以自己添加认为合理的栏目 +* slides: 主要是 ppt 文件类型(若有多个老师,则在课程目录建立slides-teacherName1, slides-teacherName2...) +* homework & lab(一个或两个目录) +* 教材与参考书可以直接放在课程目录下 +* 课程主页及其他链接资源(记在 课程/README.md 中) +* 心得与经验 +* students(同学们上传的自己的一些资料,作品,每个同学新建一个目录) +* 非zip, 非以'.'开头的文件多于 3 个的目录下都有个 zip 文件:`-DIRECTORY 目录下的\d+个文件.zip`,包含当前目录下的一些文件, 这样方便大家一键下载. (在 git commit前, 运行 `./before__commit.sh`可以自动生成) + +如`数据结构`课程 + +``` +├ lab +│   ├ bankSimulation +│   ├ huffman +│   ├ navigation +│   ├ polynomial +│   └ README.md +├ slides +│   ├ ch10-排序.ppt +│   ├ ch1-绪论.ppt +│   ├ ch2-线性表.ppt +│   ├ ch3.ppt +│   ├ ch6.pps +│   ├ ch7.pps +│   ├ ch9.pps +│   ├ 数据结构c语言版严蔚敏PPT.ppt +│   └ -计算机与信息类-数据结构-slides目录下的8个文件.zip +├ students +│   ├ mbinary +│   └ README.md +├ 数据结构c_严蔚敏.pdf +└ 数据结构习题集答案(C语言版严蔚敏)_ca332.pdf +``` + + +# 课程目录 +**根据拼音字母排序** + +{index} + +# 管理投稿 +欢迎大家的参与与贡献 + +## 投稿方式 + +### 帮忙上传 +可以发给我或者其他同学帮忙上传, 或者提 issue + +### 网页操作 +* 用网页或者[桌面版](https://desktop.github.com/)直接操作,fork and pull request, + 操作方式可以参考 [这里](https://blog.csdn.net/qq_29277155/article/details/51048990)和[这里](https://blog.csdn.net/zhangw0_0/article/details/50667891) ,[介绍pr操作](https://blog.csdn.net/huutu/article/details/51018317) + +### 用命令行 +对于用命令行的同学,提醒一下这个仓库很大(2018-5-2时已有 3G左右) +所以如果直接 clone 很慢。 +可以使用 sparse-checkout, 只下载你指定的目录 + +首先用网页操作,创建你想要的目录(已有的可以直接用), 如在公选课目录下创建`人工智障`, +然后在 cli 执行 +```shell +mkdir ustc-courses #文件夹名可以自己取 +cd ustc-courses +git init +git remote add -f origin git@github.com:mbinary/USTC-CS-Courses-Resource.git +git config core.sparsecheckout true +echo "公选课/人工智障" >> .git/info/sparse-checkout #这里工作目录就是在那个 repo 主页下 + +#如果还有其他目录,都像上面一样加入即可,如 `echo "大二上/ICS/ppt" >> .git/info/sparse-checkout` +#只需记住的是 加入的目录应该在远程仓库存在,否则报错“error: Sparse checkout leaves no entry on the working directory” + +git pull origin master +git remote add upstream git@github.com:mbinary/USTC-CS-Courses-Resource.git +``` +建议: 如果没有较大的改动, 或者在改动之前,可以删除掉以前 fork 的仓库 重新 fork + +更新内容后 +```shell +git fetch upstream/master +git merge upstream/master +``` + +## 投稿建议 +* github 上不能直接上传大于 100mb 的文件. 对于超过 100 mb 的文件, 可以存在云盘,然后将链接写在[这里](网盘资源/README.md) +* 若是自己原创的作品,可以在文件名后加上后缀,如`-16- 计 - 王小二`, 文件里也可以写上联系方式,当然不写也行。 +* 注意资源大多是二进制文件, 多次改动会使 git 重新上传, 即使 `mv`, 也会使本地仓库重新上传到远程仓库,所以在没有必要的情况下, 不要对二进制文件做任何改动. + + + +# 版权声明 +所有资源,著作权归原作者所有,此 repo 的目的是**学习交流**. +如果使用者的不当使用造成不良后果,与此 repo 的贡献者无关。 +''' diff --git a/utils/checkBigFile.py b/utils/checkBigFile.py index d03ae851..4755b868 100644 --- a/utils/checkBigFile.py +++ b/utils/checkBigFile.py @@ -1,32 +1,32 @@ -import os -import shutil - -import argparse - -parser = argparse.ArgumentParser() -parser.add_argument('-p','--path',help='path to check',default='.') -parser.add_argument('-s','--size',help='max size of file to be removed',default=2**20*100) # 100Mb -args = parser.parse_args() - -PATH = args.path -SIZE = args.size -def checkBigFile(path,size): - big = '.bigFile' - if not os.path.exists(big): - os.mkdir(big) - gen = os.walk(os.path.abspath(path)) - for path,dirs,files in gen: - li = path.strip(os.sep).split(os.sep) - if any([i[0]=='.' and i!='.' for i in li]):continue - for file in files: - filePath = os.path.join(path,file) - sz = os.path.getsize(filePath) - if sz > size: - print('[BIG]: {} is bigger than 100mb'.format(filePath)) - try: - shutil.move(filePath,big) - except Exception as e: - print(e,path) - os.remove(filePath) -if __name__=='__main__': - checkBigFile(PATH,SIZE) +import os +import shutil + +import argparse + +parser = argparse.ArgumentParser() +parser.add_argument('-p','--path',help='path to check',default='.') +parser.add_argument('-s','--size',help='max size of file to be removed',default=2**20*100) # 100Mb +args = parser.parse_args() + +PATH = args.path +SIZE = args.size +def checkBigFile(path,size): + big = '.bigFile' + if not os.path.exists(big): + os.mkdir(big) + gen = os.walk(os.path.abspath(path)) + for path,dirs,files in gen: + li = path.strip(os.sep).split(os.sep) + if any([i[0]=='.' and i!='.' for i in li]):continue + for file in files: + filePath = os.path.join(path,file) + sz = os.path.getsize(filePath) + if sz > size: + print('[BIG]: {} is bigger than 100mb'.format(filePath)) + try: + shutil.move(filePath,big) + except Exception as e: + print(e,path) + os.remove(filePath) +if __name__=='__main__': + checkBigFile(PATH,SIZE) diff --git a/utils/config.py b/utils/config.py index 6708b4cb..fca469f7 100644 --- a/utils/config.py +++ b/utils/config.py @@ -1,226 +1,226 @@ -# coding: utf-8 -import os.path - -HOST = 'https://raw.githubusercontent.com/' -OWNER = 'mbinary' #'USTC-Courses' #'mbinary'# -REPO = 'USTC-CS-Courses-Resource' -BRANCH = 'master' - - -PATH = os.path.join(HOST,OWNER,REPO,BRANCH) - - -WALKDIR = os.path.abspath('.') - -TARDIR = '/mnt/d/blogfile/blog/source/ustc-cs' -if not os.path.exists(TARDIR): - TARDIR = 'docs' - -IGNORE = ['utils','docs','__pycache__'] - -HTML = ''' - - - - - - - - - -

-     : - /{cur} -

-
根据拼音排序
-
-

Directories

- - -

Files

- - -
-   Github -   Feedback -
- - {readme} - - -''' - -README=r''' -# 中国科学技术大学课程资源 ->这是一个收集 中国科学技术大学课程资源的(主要是计算机学院的,也有其他课程,公选课,自由选修等)的 repo, 包括课程电子版 书籍,参考书,slides(ppt), 考试试卷,学习心得,某些书的答案。 - - -# 目录 - - -* [公告](#公告) -* [资料下载](#资料下载) -* [贡献者们](#贡献者们) -* [课程结构](#课程结构) -* [课程目录](#课程目录) -* [贡献投稿](#贡献投稿) - * [投稿方式](#投稿方式) - * [帮忙上传](#帮忙上传) - * [网页操作](#网页操作) - * [用命令行](#用命令行) - * [投稿建议](#投稿建议) -* [版权声明](#版权声明) - - - -# 公告 -* 欢迎 star,fork. 欢迎反馈与建议(通过 [issue](https://github.com/mbinary/USTC-CS-Courses-Resource/issues/new),mail, 或者 [qq](http://wpa.qq.com/msgrd?v=3&uin=414313516&site=qq&menu=yes)) -* 可以通过在此页面搜索课程名快速定位,下面的课程目录是经过**拼音排序**过的,方便查找 -* 可以添加其他计算机非课程资源, 欢迎大家的参与与贡献 (。・∀・)ノ - -# 资料下载 -## FTP -1. FTP/FTPS: - - 地址:ftp.ustclug.org; - - 路径:/ebook/USTC-CS-Courses-Resource; - - 用户名:ftp; - - 密码:ftp; -2. SFTP (Secure File Transfer Protocol): - - 地址:ftp.ustclug.org; - - 路径:/ebook/USTC-CS-Courses-Resource; - - 用户名:ftp; - - 密码:ftp; -3. AFP (Apple Filing Protocol) - - 地址:afp://ftp.ustclug.org/; - - 路径:/ebook/USTC-CS-Courses-Resource; - - Connect As Guest - -## HTTPS -- [github 网页](#课程目录) -- [脚本生成的网页](https://mbinary.coding.me/ustc-cs/) - -脚本生成的网页中直接包含了下载链接, 比 github 方便一点. 而且在移动端下载二进制文件, 在github 需要点击两次(第一次显示`This file is binary and cannot be displayed inline`,需要再点`open binary file`/`Download`才行),后者只需要一次即可下载, 对于大的二进制文件, github 移动端的不能直接下载, 需要切换成 `Desktop Version` 才有 下载按钮. - -FTP 更快, 可以下载整个目录, 是最好的选择, 只是更新频率低于网页 - -# [贡献者们](https://github.com/mbinary/USTC-CS-Courses-Resource/graphs/contributors) - -# 课程结构 -每门课程大致结构如下,有些栏目可能没有,也可以自己添加认为合理的栏目 - -* 教材, 答案在课程目录下 -* 参考书, 参考资料在 reference 下 -* 复习试卷, 习题课, 作业解答 在 review 下 -* homework-teacher1, homework-teacher2 ..., lab-teacher1, ... -* 课程主页及其他链接资源记在 README.md 中 -* slides: 主要是 ppt 文件类型, **将所有 slides** 打包成 zip, 放在 课程目录下(若有多个老师,则在课程目录建立slides-teacherName1.zip, slides-teacherName2.zip...) -* students(同学们上传的自己的一些资料,作品,每个同学新建一个目录) -* 非zip, 非以'.'开头的文件多于 3 个的目录下都有个 zip 文件:`-DIRECTORY 目录下的\d+个文件.zip`,包含当前目录下的一些文件, 这样方便大家一键下载. (在 git commit前, 运行 `./before__commit.sh`可以自动生成) - - -如 编译原理和技术 课程 -``` -├ lab-张昱 -│   ├ c1interpreter -│   ├ c1recognizer -│   ├ Homework -│   ├ lab-1-2-answer -│   ├ lab2 -│   ├ sa -│   └ teamwork -├ lab-李诚 -│   ├ lab-1 -│   ├ lab-2 -│   ├ lab-3 -│   ├ lab-4 -│   ├ pre -│   ├ README.md -│   └ Server_Guide.pdf -├ lab-郑启龙 -│   ├ lab1-declarationParser -│   └ lab2-pl0 -├ README.md -├ reference -│   ├ 201801CompilerPractice.pdf -│   ├ Programming_Language_Pragmatics(b-ok.xyz).pdf -│   ├ The garbage collection handbook the art of automatic memory management.PDF -│   ├ 垃圾回收的算法与实现---文字版.pdf -│   ├ 程序设计语言实践之路_d98f6.pdf -│   ├ 编译原理术语中英文对照表.pdf -│   └ 高级编译器设计与实现(虎书).pdf -├ review -│   ├ 2014期末试卷.pdf -│   ├ 2017习题课-张昱.pdf -│   ├ 2018-final-review.pdf -│   ├ 2018习题课-李诚.pdf -│   ├ 2018习题课-郑启龙.pdf -│   ├ 2018期中考试试题与参考答案.pdf -│   └ ex_on_PL0.pdf -├ slides-张昱.zip -├ slides-李诚.zip -├ slides-郑启龙.zip -├ 编译原理_第二版_(陈意云_著)_高等教育出版社_课后答案(完善版).pdf -└ 编译原理 陈意云 第3版.pdf -``` - -# 课程目录 -**根据拼音字母排序** - -{index} - -# 贡献投稿 -欢迎大家的参与与贡献 - -## 投稿方式 - -### 帮忙上传 -可以发给我或者其他同学帮忙上传, 或者提 issue - -### 网页操作 -* 用网页或者[桌面版](https://desktop.github.com/)直接操作,fork and pull request, - 操作方式可以参考 [这里](https://blog.csdn.net/qq_29277155/article/details/51048990)和[这里](https://blog.csdn.net/zhangw0_0/article/details/50667891) ,[介绍pr操作](https://blog.csdn.net/huutu/article/details/51018317) - -### 用命令行 -对于用命令行的同学,提醒一下这个仓库很大(2018-5-2时已有 3G左右) -所以如果直接 clone 很慢。 -可以使用 sparse-checkout, 只下载你指定的目录 - -首先用网页操作,创建你想要的目录(已有的可以直接用), 如在公选课目录下创建`人工智障`, -然后在 cli 执行 -```shell -mkdir ustc-courses #文件夹名可以自己取 -cd ustc-courses -git init -git remote add -f origin git@github.com:mbinary/USTC-CS-Courses-Resource.git -git config core.sparsecheckout true -echo "公选课/人工智障" >> .git/info/sparse-checkout #这里工作目录就是在那个 repo 主页下 - -#如果还有其他目录,都像上面一样加入即可,如 `echo "大二上/ICS/ppt" >> .git/info/sparse-checkout` -#只需记住的是 加入的目录应该在远程仓库存在,否则报错“error: Sparse checkout leaves no entry on the working directory” - -git pull origin master -git remote add upstream git@github.com:mbinary/USTC-CS-Courses-Resource.git -``` -建议: 如果没有较大的改动, 或者在改动之前,可以删除掉以前 fork 的仓库 重新 fork - -更新内容后 -```shell -git fetch upstream/master -git merge upstream/master -``` - -## 投稿建议 -* github 上不能直接上传大于 100mb 的文件. 对于超过 100 mb 的文件, 可以存在云盘,然后将链接写在[这里](网盘资源/README.md) -* 若是自己原创的作品,可以在文件名后加上后缀,如`-16- 计 - 王小二`, 文件里也可以写上联系方式,当然不写也行。 -* 注意资源大多是二进制文件, 多次改动会使 git 重新上传, 即使 `mv`, 也会使本地仓库重新上传到远程仓库,所以在没有必要的情况下, 不要对二进制文件做任何改动. - - - -# 版权声明 -所有资源,著作权归原作者所有,此 repo 的目的是**学习交流**. -如果使用者的不当使用造成不良后果,与此 repo 的贡献者无关。 -''' +# coding: utf-8 +import os.path + +HOST = 'https://raw.githubusercontent.com/' +OWNER = 'mbinary' #'USTC-Courses' #'mbinary'# +REPO = 'USTC-CS-Courses-Resource' +BRANCH = 'master' + + +PATH = os.path.join(HOST,OWNER,REPO,BRANCH) + + +WALKDIR = os.path.abspath('.') + +TARDIR = '/mnt/d/blogfile/blog/source/ustc-cs' +if not os.path.exists(TARDIR): + TARDIR = 'docs' + +IGNORE = ['utils','docs','__pycache__'] + +HTML = ''' + + + + + + + + + +

+     : + /{cur} +

+
根据拼音排序
+
+

Directories

+ + +

Files

+ + +
+   Github +   Feedback +
+ + {readme} + + +''' + +README=r''' +# 中国科学技术大学课程资源 +>这是一个收集 中国科学技术大学课程资源的(主要是计算机学院的,也有其他课程,公选课,自由选修等)的 repo, 包括课程电子版 书籍,参考书,slides(ppt), 考试试卷,学习心得,某些书的答案。 + + +# 目录 + + +* [公告](#公告) +* [资料下载](#资料下载) +* [贡献者们](#贡献者们) +* [课程结构](#课程结构) +* [课程目录](#课程目录) +* [贡献投稿](#贡献投稿) + * [投稿方式](#投稿方式) + * [帮忙上传](#帮忙上传) + * [网页操作](#网页操作) + * [用命令行](#用命令行) + * [投稿建议](#投稿建议) +* [版权声明](#版权声明) + + + +# 公告 +* 欢迎 star,fork. 欢迎反馈与建议(通过 [issue](https://github.com/mbinary/USTC-CS-Courses-Resource/issues/new),mail, 或者 [qq](http://wpa.qq.com/msgrd?v=3&uin=414313516&site=qq&menu=yes)) +* 可以通过在此页面搜索课程名快速定位,下面的课程目录是经过**拼音排序**过的,方便查找 +* 可以添加其他计算机非课程资源, 欢迎大家的参与与贡献 (。・∀・)ノ + +# 资料下载 +## FTP +1. FTP/FTPS: + - 地址:ftp.ustclug.org; + - 路径:/ebook/USTC-CS-Courses-Resource; + - 用户名:ftp; + - 密码:ftp; +2. SFTP (Secure File Transfer Protocol): + - 地址:ftp.ustclug.org; + - 路径:/ebook/USTC-CS-Courses-Resource; + - 用户名:ftp; + - 密码:ftp; +3. AFP (Apple Filing Protocol) + - 地址:afp://ftp.ustclug.org/; + - 路径:/ebook/USTC-CS-Courses-Resource; + - Connect As Guest + +## HTTPS +- [github 网页](#课程目录) +- [脚本生成的网页](https://mbinary.github.io/ustc-cs/) + +脚本生成的网页中直接包含了下载链接, 比 github 方便一点. 而且在移动端下载二进制文件, 在github 需要点击两次(第一次显示`This file is binary and cannot be displayed inline`,需要再点`open binary file`/`Download`才行),后者只需要一次即可下载, 对于大的二进制文件, github 移动端的不能直接下载, 需要切换成 `Desktop Version` 才有 下载按钮. + +FTP 更快, 可以下载整个目录, 是最好的选择, 只是更新频率低于网页 + +# [贡献者们](https://github.com/mbinary/USTC-CS-Courses-Resource/graphs/contributors) + +# 课程结构 +每门课程大致结构如下,有些栏目可能没有,也可以自己添加认为合理的栏目 + +* 教材, 答案在课程目录下 +* 参考书, 参考资料在 reference 下 +* 复习试卷, 习题课, 作业解答 在 review 下 +* homework-teacher1, homework-teacher2 ..., lab-teacher1, ... +* 课程主页及其他链接资源记在 README.md 中 +* slides: 主要是 ppt 文件类型, **将所有 slides** 打包成 zip, 放在 课程目录下(若有多个老师,则在课程目录建立slides-teacherName1.zip, slides-teacherName2.zip...) +* students(同学们上传的自己的一些资料,作品,每个同学新建一个目录) +* 非zip, 非以'.'开头的文件多于 3 个的目录下都有个 zip 文件:`-DIRECTORY 目录下的\d+个文件.zip`,包含当前目录下的一些文件, 这样方便大家一键下载. (在 git commit前, 运行 `./before__commit.sh`可以自动生成) + + +如 编译原理和技术 课程 +``` +├ lab-张昱 +│   ├ c1interpreter +│   ├ c1recognizer +│   ├ Homework +│   ├ lab-1-2-answer +│   ├ lab2 +│   ├ sa +│   └ teamwork +├ lab-李诚 +│   ├ lab-1 +│   ├ lab-2 +│   ├ lab-3 +│   ├ lab-4 +│   ├ pre +│   ├ README.md +│   └ Server_Guide.pdf +├ lab-郑启龙 +│   ├ lab1-declarationParser +│   └ lab2-pl0 +├ README.md +├ reference +│   ├ 201801CompilerPractice.pdf +│   ├ Programming_Language_Pragmatics(b-ok.xyz).pdf +│   ├ The garbage collection handbook the art of automatic memory management.PDF +│   ├ 垃圾回收的算法与实现---文字版.pdf +│   ├ 程序设计语言实践之路_d98f6.pdf +│   ├ 编译原理术语中英文对照表.pdf +│   └ 高级编译器设计与实现(虎书).pdf +├ review +│   ├ 2014期末试卷.pdf +│   ├ 2017习题课-张昱.pdf +│   ├ 2018-final-review.pdf +│   ├ 2018习题课-李诚.pdf +│   ├ 2018习题课-郑启龙.pdf +│   ├ 2018期中考试试题与参考答案.pdf +│   └ ex_on_PL0.pdf +├ slides-张昱.zip +├ slides-李诚.zip +├ slides-郑启龙.zip +├ 编译原理_第二版_(陈意云_著)_高等教育出版社_课后答案(完善版).pdf +└ 编译原理 陈意云 第3版.pdf +``` + +# 课程目录 +**根据拼音字母排序** + +{index} + +# 贡献投稿 +欢迎大家的参与与贡献 + +## 投稿方式 + +### 帮忙上传 +可以发给我或者其他同学帮忙上传, 或者提 issue + +### 网页操作 +* 用网页或者[桌面版](https://desktop.github.com/)直接操作,fork and pull request, + 操作方式可以参考 [这里](https://blog.csdn.net/qq_29277155/article/details/51048990)和[这里](https://blog.csdn.net/zhangw0_0/article/details/50667891) ,[介绍pr操作](https://blog.csdn.net/huutu/article/details/51018317) + +### 用命令行 +对于用命令行的同学,提醒一下这个仓库很大(2018-5-2时已有 3G左右) +所以如果直接 clone 很慢。 +可以使用 sparse-checkout, 只下载你指定的目录 + +首先用网页操作,创建你想要的目录(已有的可以直接用), 如在公选课目录下创建`人工智障`, +然后在 cli 执行 +```shell +mkdir ustc-courses #文件夹名可以自己取 +cd ustc-courses +git init +git remote add -f origin git@github.com:mbinary/USTC-CS-Courses-Resource.git +git config core.sparsecheckout true +echo "公选课/人工智障" >> .git/info/sparse-checkout #这里工作目录就是在那个 repo 主页下 + +#如果还有其他目录,都像上面一样加入即可,如 `echo "大二上/ICS/ppt" >> .git/info/sparse-checkout` +#只需记住的是 加入的目录应该在远程仓库存在,否则报错“error: Sparse checkout leaves no entry on the working directory” + +git pull origin master +git remote add upstream git@github.com:mbinary/USTC-CS-Courses-Resource.git +``` +建议: 如果没有较大的改动, 或者在改动之前,可以删除掉以前 fork 的仓库 重新 fork + +更新内容后 +```shell +git fetch upstream/master +git merge upstream/master +``` + +## 投稿建议 +* github 上不能直接上传大于 100mb 的文件. 对于超过 100 mb 的文件, 可以存在云盘,然后将链接写在[这里](网盘资源/README.md) +* 若是自己原创的作品,可以在文件名后加上后缀,如`-16- 计 - 王小二`, 文件里也可以写上联系方式,当然不写也行。 +* 注意资源大多是二进制文件, 多次改动会使 git 重新上传, 即使 `mv`, 也会使本地仓库重新上传到远程仓库,所以在没有必要的情况下, 不要对二进制文件做任何改动. + + + +# 版权声明 +所有资源,著作权归原作者所有,此 repo 的目的是**学习交流**. +如果使用者的不当使用造成不良后果,与此 repo 的贡献者无关。 +''' diff --git a/utils/genReadme.py b/utils/genReadme.py index 34b5eb9a..791ad583 100644 --- a/utils/genReadme.py +++ b/utils/genReadme.py @@ -1,21 +1,21 @@ -# coding: utf-8 -from md_tree_links import tree -from argparse import ArgumentParser -from config import README - -parser = ArgumentParser() - -parser.add_argument('-p','--path',default='.',help='path to walk') -parser.add_argument('-f','--fileinclude',action='store_true',help='if has, list files and dirs, else only dirs') -parser.add_argument('-d','--depth', type = int, default = 2) -#获取参数 -args = parser.parse_args() -FILE = args.fileinclude -PATH = args.path -DEPTH = args.depth - - -idxs = tree(PATH,DEPTH,FILE) -s = README.format(index='\n'.join(idxs)) -with open('README.md','w') as f: - f.write(s) +# coding: utf-8 +from md_tree_links import tree +from argparse import ArgumentParser +from config import README + +parser = ArgumentParser() + +parser.add_argument('-p','--path',default='.',help='path to walk') +parser.add_argument('-f','--fileinclude',action='store_true',help='if has, list files and dirs, else only dirs') +parser.add_argument('-d','--depth', type = int, default = 2) +#获取参数 +args = parser.parse_args() +FILE = args.fileinclude +PATH = args.path +DEPTH = args.depth + + +idxs = tree(PATH,DEPTH,FILE) +s = README.format(index='\n'.join(idxs)) +with open('README.md','w') as f: + f.write(s) diff --git a/utils/genZipFile.py b/utils/genZipFile.py index ee42f4ad..f9b06194 100644 --- a/utils/genZipFile.py +++ b/utils/genZipFile.py @@ -1,53 +1,53 @@ -# coding: utf-8 -import os -import shutil -from zipfile import ZipFile - -from config import WALKDIR, IGNORE -import argparse - -parser = argparse.ArgumentParser() -parser.add_argument('-r','--rewrite',help='rewrite zip file',action='store_true') -args = parser.parse_args() -REWRITE = args.rewrite - -def checkZip(name): - '''check if this file should be added to the zip''' - li = [name.startswith('.') ,name.endswith('.zip'),name.lower()=='readme.md'] - return not any(li) - -def isIgnore(li,files): - return 'index.html' in files or any((i[0]=='.' and i!='.') or i.startswith('__') or i in IGNORE for i in li) -def genZipFile(tar = WALKDIR,rewrite=False): - os.chdir(tar) - n = len(tar) - gen = os.walk(tar) - pwd = os.path.abspath('.') - for path, dirs, files in gen: - li = path.strip(os.sep).split(os.sep) - if isIgnore(li,files):continue - ziplst = [] - for i in files: - if i.endswith('个文件.zip'): - if rewrite: - os.remove(os.path.join(path,i)) - else:break - elif checkZip(i): - ziplst .append(i) - else: - if len(ziplst)<3:continue - ziplst.sort() - tmp = os.path.abspath(path) \ - .replace(pwd,'')\ - .replace(os.sep,'-') - name = '{tmp}目录下的{length}个文件.zip'.format(tmp=tmp,length =len(ziplst)) - zipName = os.path.join(path,name) - try: - with ZipFile(zipName,'w') as z: - os.chdir(path) - for i in ziplst: z.write(i) - except Exception as e: - print(e,path) - -if __name__ == '__main__': - genZipFile(rewrite=REWRITE) +# coding: utf-8 +import os +import shutil +from zipfile import ZipFile + +from config import WALKDIR, IGNORE +import argparse + +parser = argparse.ArgumentParser() +parser.add_argument('-r','--rewrite',help='rewrite zip file',action='store_true') +args = parser.parse_args() +REWRITE = args.rewrite + +def checkZip(name): + '''check if this file should be added to the zip''' + li = [name.startswith('.') ,name.endswith('.zip'),name.lower()=='readme.md'] + return not any(li) + +def isIgnore(li,files): + return 'index.html' in files or any((i[0]=='.' and i!='.') or i.startswith('__') or i in IGNORE for i in li) +def genZipFile(tar = WALKDIR,rewrite=False): + os.chdir(tar) + n = len(tar) + gen = os.walk(tar) + pwd = os.path.abspath('.') + for path, dirs, files in gen: + li = path.strip(os.sep).split(os.sep) + if isIgnore(li,files):continue + ziplst = [] + for i in files: + if i.endswith('个文件.zip'): + if rewrite: + os.remove(os.path.join(path,i)) + else:break + elif checkZip(i): + ziplst .append(i) + else: + if len(ziplst)<3:continue + ziplst.sort() + tmp = os.path.abspath(path) \ + .replace(pwd,'')\ + .replace(os.sep,'-') + name = '{tmp}目录下的{length}个文件.zip'.format(tmp=tmp,length =len(ziplst)) + zipName = os.path.join(path,name) + try: + with ZipFile(zipName,'w') as z: + os.chdir(path) + for i in ziplst: z.write(i) + except Exception as e: + print(e,path) + +if __name__ == '__main__': + genZipFile(rewrite=REWRITE) diff --git a/utils/getSize.py b/utils/getSize.py index 2d439cb5..0e16d894 100644 --- a/utils/getSize.py +++ b/utils/getSize.py @@ -1,30 +1,30 @@ -# coding: utf-8 -import os -import sys -def formatSize(size): - s = 'BKMGTP' - ct = 0 - while size>=(1<=10: ct-=10 - return '{sz:.2f}{a}'.format(sz=size/(1<=(1<=10: ct-=10 + return '{sz:.2f}{a}'.format(sz=size/(1<