lab0实验报告
一、实验思考题
Thinking0.1
GUI,用图形方式展示操作界面,即图形用户接口。
-
-
相比于命令行窗口更加美观,颜色丰富,可以观看视频,查看图片等。
-
可以使用多种输入方式,鼠标、键盘、手写板。
CLI
-
上手比较困难,需要熟悉一些命令的使用,需要学习相关知识使用,普通群众入门较难。
-
可以使用更复杂和丰富的功能,例如lab0中学习到的grep,sed,find等指令。只需要简单的命令,就可以完成在GUI界面下相对比较复杂的操作。
-
界面单调。
-
双手无需离开键盘即可完成操作。
Thinking0.2
command文件如下
echo 'echo Shell Start...
echo set a = 1
a=1
echo set b = 2
b=2
echo set c = a+b
c=$[$a+$b]
echo c = $c
echo save c to ./file1
echo $c>file1
echo save b to ./file2
echo $b>file2
echo save a to ./file3
echo $a>file3
echo save file1 file2 file3 to file4
cat file1>file4
cat file2>>file4
cat file3>>file4
echo save file4 to ./result
cat file4>>result' > test
result文件
3
2
1
分析
先设置了变量c=3,并存储在file1中,b=2存储在file2中,a=1存储在file3中
命令cat file1>file4创建file4并写入file1中内容即“3”
>>追加写入,在file4中追加写入了file2、file3的内容,即2、1。
echo echo Shell Start与echo 'echo Shell Start'
效果无区别
echo echo $c>file1与echo 'echo $c>file1'
效果有区别
Shell中单引号可保留字面量,即上条命令中的'$'符号,所以echo 'echo $c file1'会被直接回声输出
Thinking0.3
add the file
-
从untracked状态到unmodified,应当使用git add,所以对应命令即为 git add
stage the file
-
从modified状态到staged,是在文件被修改后,还没有加入暂存区,所以对应命令为git add
commit
-
从staged状态重新回到unmodified,staged中的文件是已经通过git add保存在清单中的,重新回到未修改,所以应该对应命令git commit
Thinking0.4
-
如果存储在仓库中,则可以使用chekout命令来恢复printf.c文件
git checkout printf.c
-
如果已经存在仓库中,并且头结点还存在时。可以先使用reset HEAD恢复,再使用checkout恢复文件
git reset HEAD printf.c
git checkout printf.c
-
从暂存区删除,但保留工作区。可以使用git rm --cached
git rm --cached Tucao.txt
Thinking0.5
-
git clone只克隆默认分支,Head指向的master分支。如果需要克隆其他分支需要使用命令git clone <url>,git clone -b。
-
正确。
-
正确。如果需要克隆分支需要使用命令git clone <url>,git clone -b。克隆只克隆默认HEAD指向的master分支
-
正确,默认处于该分支。
二、实验难点
对于Makefile的使用是本章一个难点,如图所示,需要学习一些知识。
-
gcc的进阶操作
-
如生成指定的文件
-
包含指定路径下头文件的编译。
-
-
clean使用
-
使用make clean删除文件
-
三、体会与感想
lab0实验,主要是一些关于linux环境的操作、git操作以及makefile的熟悉,总体难度适中。
-
由于自己安装了Ubuntu,在之前也在linux命令行界面练习过相关命令。所以第一部分的linux相关实验相对而言是比较轻松的。
-
git在oo课上也学习过如何使用,所以相对也比较轻松。主要是需要熟悉分支操作。
-

浙公网安备 33010602011771号