网络攻防前期知识储备
一、如何提问
1、我的观点:提问分为课堂提问和课下提问两种。课堂中应该是当面交流的,更加鼓励当有疑问的时候在稍作整理思路后直接大胆的提问。课下疑问的解决,不可能时时的交流,更加需要独立的思考,而提问需要一定的模式,既能够讲清楚问题的关键,也是一种对过程的梳理,有助于问题的解决。
2、提问的目的绝不是为了轻而易举地获得答案,而是为了逐步培养自己的思考能力,去形成自己分析问题、解决问题的思路。
3、提问模板
专业问题的“三问(问自己、问对象、问方式)”模式:
3.1、搞清楚自己的问题(问自己):询问自己问问题的目的;询问自己为解答这个问题做了什么;询问内容本身是否具体清晰合理。
3.2、了解提问的对象(问对象):思考被提问对象的相关信息,如术业专攻、性格特点、活动时间等等。
3.3、选择合适的提问方式(问方式):用什么样的方式询问可以有效地达到自己的目的?各种方式的优缺点是什么。
4、 “时间”模式与“三问”模式整合成一份工具表格,如下表:
5、一些有用的参考模板
文字的表述方式往往也能看出你的思维方式是否完善。
5.1、一个模板可以是这样:
我使用XXXX程序时,环境情况是(操作系统版本,浏览器版本,...),我做了XXX操作,结果出现了XXX问题,我在搜索引擎上找到XXX解答,我的理解是XXXX,我操作时出现了XXXX问题,还是无法解决问题,我也请教了同学XXX,也没有解决问题,老师,您能帮我看看是怎么回事吗?
5.2、一个模板可以是这样:
我看了这一段文字 (引用文字),有这个问题 (提出问题)。 我查了资料,有这些说法(引用说法),根据我的实践,我得到这些经验(描述自己的经验)。 但是我还是不太懂,我的困惑是(说明困惑)。
【或者】我反对作者的观点(提出作者的观点,自己的观点,以及理由)。
根据同学
5.3教材中代码学习中的问题示例
教材PXX代码运行结查为什么是xxxx呢?我原来认为这个地方应该是XXX,我写的代码的码云链接是XXXX。
教材PXX代码第X行是什么意思?这个问题我查找了XXXX资料,我的困惑是XXX。我写的代码的码云链接是XXXX。
附录:发现的一个实用的搜索工具
《八个雅鹿》是个搜索引擎聚集网站
二、使用开源中国(码云)托管代码
1、我的码云
很早之前就有码云账号,但当时也下载一些有用的学习资料,对码云真正的具体使用并不了解。通过娄老师的博客学习到了码云真正的精髓。
2、版本控制工具git
2.1、安装git
2.2、流程
Workspace:工作区
Index / Stage:暂存区
Repository:仓库区(或本地仓库)
Remote:远程仓库
2.3、需要掌握的git命令:git init,git add ,git commit, git push.
配置
# 在当前目录新建一个Git代码库
$ git init
# 新建一个目录,将其初始化为Git代码库
$ git init [project-name]
添加
# 添加指定文件到暂存区
$ git add
[file1
]
[file2
]
...
# 添加指定目录到暂存区,包括子目录
$ git add
[dir
]
# 添加当前目录的所有文件到暂存区
$ git add
.
# 添加每个变化前,都会要求确认
# 对于同一个文件的多处变化,可以实现分次提交
$ git add
-p
提交
# 提交暂存区到仓库区
$ git commit
-m
[message
# 提交暂存区的指定文件到仓库区
$ git commit
[file1
]
[file2
]
...
-m
[message
]
# 提交工作区自上次commit之后的变化,直接到仓库区
$ git commit
-a
# 提交时显示所有diff信息
$ git commit
-v
# 使用一次新的commit,替代上一次提交
# 如果代码没有任何新变化,则用来改写上一次commit的提交信息
$ git commit
--amend
-m
[message
]
# 重做上一次commit,并包括指定文件的新变化
$ git commit
--amend
[file1
]
[file2
]
...
远程同步
# 取回远程仓库的变化,并与本地分支合并
$ git pull
[remote
]
[branch
]
# 上传本地指定分支到远程仓库
$ git push
[remote
]
[branch
]
# 强行推送当前分支到远程仓库,即使有冲突
$ git push
[remote
]
--force
# 推送所有分支到远程仓库
$ git push
[remote
]
--all
3、使用oschina的git服务器
3.1、其实oschina的git服务器与github的差不多,不过既然是中国的git服务器,那么速度应该更快一些吧
3.2、建立项目
3.3、我创建好了一个项目,叫做test
a、为这个项目添加公钥
打开git客户端,生成公钥,生成命令如下(注意大小写)
ssh-keygen.exe-C"邮箱地址" -t rsa
passphrase表示对应oschina的密码
这样在d盘下就会有两个文件:
oschina_key、oschina_key.pub,为了方便管理,在d盘下创建一个文件夹为mypro,把oschina_key、oschina_key.pub放到里面
b、把公钥添加到oschina中
用UE打开oschina_key.pub,全选里面的内容,填入公钥中
3.4、使用git托管项目
a、下载项目
这样,我们就能看到在f/test里面有两个初始化的文件
b、我们做一下修改,为README.md填入信息:
c、git进入到项目中,为项目添加新的文件,然后commit,再提交到远程服务器中
d、在项目页面中,刷新之后,就可以查看到我们刚刚更新的ReadMe内容
好了,这么简单的配置,我们就可以使用oschina的git服务器了,其实其他的服务器比如github的都是类似的配置。
四、利用实验楼进行课程学习
实验楼
https://www.shiyanlou.com/user/208371/
4.1、学习linux基础入门
4.2、测试错题总结
1、将文件“ file1 ”重命名为“ myfile ”的命令是?
A.mv file1 myfile
B.mv myfile file1
C.rename file1 myfile
D.rename myfile file1
正确答案: A 你的答案: C
mv 旧的文件名 新的文件名 rename 要三个参数
2、相对路径,也就是相对于你当前的目录的路径,相对路径是以当前目录 ()为起点,以你所要到的目录为终点。
A..
B...
C./
D.~
正确答案: A 你的答案: C
. 当前目录,..父目录, / 根目录, ~ home目录
3、输入"cd"命令并按回车键后,将会出现什么情况?
A.从当前目录切换到根目录
B.屏幕显示当前目录
C.从当前目录切换为上一级目录
D.从当前目录切换到用户主目录
正确答案: D 你的答案: C
cd 等价于cd ~,也就是cd /home/userXXX
4.3学习心得
作为一个计算机的学生,linux并不陌生,一些基础的命令是了解的,而且对于很多命令可能不熟悉,但直到了基本语句的用法,百度一下基本能解决开发中命令的需要。
在刷这个Linux基础入门课程的时候,我主要的精力放在系统知识上,而对具体的指令只是了解了一些。在这个课程中,用户及文件权限管理,文件系统操作与磁盘管理,Linux任务计划,数据流重定向,正则表达式,日志系统这些部分学到了许多以前不知道的新知识点,收获很大。
五、ubuntu安装
我是在虚拟机中安装,整体安装没有出现问题,我又在ubuntu中配置了git。
前些天由于一个意外我损失了1T的资料,里面包含了自己大学中的宝贵项目与报告。从这一个事情,以后要养成写技术博客和项目托管的好习惯,将自己的知识都发表出来,也是为自己留下备份。
我的结伴伙伴 郭永健
参考文献
如何提问
从「八个雅鹿」谈搜索技巧
常用 Git 命令清单