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 @@ - - - - -
- - - - - - --如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github
--这是一个收集 中国科学技术大学课程资源的(主要是计算机学院的,也有其他课程,公选课,自由选修等)的 repo, 包括课程电子版 书籍,参考书,slides(ppt), 考试试卷,学习心得,某些书的答案。
-
This file is binary and cannot be displayed inline
,需要再点open binary file
/Download
才行), 而在文件浏览版只需要一次即可下载Desktop Version
才有 下载按钮.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 -
-16- 计 - 王小二
, 文件里也可以写上联系方式,当然不写也行。若想帮忙管理 (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 @@ - - - - - - - - - - -- - - 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 @@ - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 @@ - - - - - - - - - - - -如果出现了 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 = ''' - - - - - - - - - - -如果出现了 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 = ''' + + + + + + + + + + +如果出现了 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 = ''' - - - - - - - - - - -如果出现了 404, 说明此博客与 github repo 更新不同步, 你可以尽快联系我解决, 或者访问 github