我的RHCE课堂实验《文件和目录操作》(转)

我的RHCE课堂实验《文件和目录操作》(转)[@more@]单元三实验
文件和目录操作

估计用时:1小时30分
目标:熟悉文件、目录操作命令的数、语法和几个文件的使用。实验将这些命令组合成一个一般的用户任务。

实验前准备:准备一个安装好的Red Hat Linux 系统,并准备一个叫student 的非特权帐号,其密码为student。检查一下指南以确认这个帐号是否已经存在在系统中。如果你的student 帐号还未建立,则按如下次序操作:

1、以root 用户登录
2、输入 # useradd student
3、输入 # passwd student
Changing password for user student
New UNIX password: {在这里输入student}
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password {重新输入student}
passwd: all authentication tokens updated successfully

实验1:目录和文件管理
假设:
你在你的home 目录中收集了一大堆文件,而你觉得现在该是将他们整理一下的时候了。你打算建立几个新的子目录,并将拷贝或者移动它们以适合你的安排。除此之外,还有一些文件你根本用不着,你想删除它们。

任务:
1、在tty1 上以student登录。密码为student。

2、刚刚登录后你应该在你的home 目录中。用"print working directory"命令校验一下。
$ pwd
/home /student

3、用一下命令检查一下你在home 目录中有否文件:
$ ls
$ ls -a
$ ls -al
为什么第一个命令和第二个命令返回不同的文件个数?
从第三个命令的输出中你看出哪个文件在你当前的home 目录中最大?
在home 目录中有子目录吗?

4、你将使用touch 命令来建立一些这个实验所需要的文件。关于这个命令的具体问题将在今后的章节中讲述。现在,你只需简单的将下面的命令全盘打出(包括花括号{},还有几个下划线 _)。
$ touch {report,memo,graph}_{sep,oct,nov,dec}_{a,b,c}{1,2,3}

5、使用ls 命令检验上一个命令的效果。你应该发现在你的home 目录中有108个(哇……)新建立的空文件。这些文件便是你后面实验所需的数据文件。如果没有这些文件,后面的实验将无法继续。

6、为了管理你的文件你必须建立一些新子目录。使用mkdir 命令建立你的home目录的直接子目录:
$ mkdir "A Reports"
$ mkdir september october november december
再次使用ls 命令检验你的工作。

7、在你新建的子目录中再建立一些其他的目录,使用如下命令:
输入下面任一一行:
$ cd A Reports/
或者
$ cd "A Reports"/
改变了当前目录。然后:
$ mkdir 1 2 3
使用ls 命令校验你已经在"A Reports"目录中有了3个子目录,分别叫做1, 2, 3。

8、将所有含"B"的文件移出你的home 目录并以月份分组。做类似这种复杂的通配字符的操作时,通常先将其“预览”一遍会是个不错的主意,它可以让你确认是在正确的文件上进行了操作。其中一种方法是将你的命令替换成一种“无害”的命令。
$ cd
$ ls -l *dec?b?
你应该看到有9个"december", "b"文件被列出。现在移动它们:
$ mv *dec?b? december/
列出december 子目录以确认移动操作顺利完成了。
$ ls -l december/
total 0
-rw-rw-r-- 1 student student 0 Oct 16 22:16 graph_dec_b1
-rw-rw-r-- 1 student student 0 Oct 16 22:16 graph_dec_b2
-rw-rw-r-- 1 student student 0 Oct 16 22:16 graph_dec_b3
-rw-rw-r-- 1 student student 0 Oct 16 22:16 memo_dec_b1
-rw-rw-r-- 1 student student 0 Oct 16 22:16 memo_dec_b2
-rw-rw-r-- 1 student student 0 Oct 16 22:16 memo_dec_b3
-rw-rw-r-- 1 student student 0 Oct 16 22:16 report_dec_b1
-rw-rw-r-- 1 student student 0 Oct 16 22:16 report_dec_b2
-rw-rw-r-- 1 student student 0 Oct 16 22:16 report_dec_b3

9、将所有剩下的"B"文件分别移入相应的目录:
$ mv *nov?b? november
$ mv *oct?b? october
$ mv *sep?b? september

10、现在你将"A"文件移动到它们相应对数字的目录中去:
$ cd "A Reports"/
$ mv ~/*_a1 1/
"a1","september"文件不需要了。删除它们并确认剩下的文件已正确的移动了。
$ cd 1
$ rm *sep*
$ ls
graph_dec_a1 graph_oct_a1 memo_nov_a1 report_dec_a1 report_oct_a1
graph_nov_a1 memo_dec_a1 memo_oct_a1 report_nov_a1

11、将最后的"a2"和"a3"文件移入相应的数字目录中去:
$ pwd
/home/student/A Reports/1
使用相对路径移动"a2"文件:
$ mv ../../*a2* ../2/
使用绝对路径移动"a3"文件
$ mv /home/student/*a3* /home/student/A Reports/3/

12、回到你的home目录下,并用ls 确认在该目录下只剩下"c"文件。

13、每个月的"c1"和"c2"文件很重要,你想将它们备份到另外一个目录中去:
$ mkdir /tmp/archive
$ cp report*[1-2] /tmp/archive/
除此之外所有December月份的文件应备份到/tmp/archive 目录中。注意使用 -i 选项以使cp 命令在覆盖文件时提示。
$ cp -i report_dec* /tmp/archive/
cp: overwrite '/tmp/archive/report_dec_c1'? n
cp: overwrite '/tmp/archive/report_dec_c2'? n

14、现在你已经备份了一些对你来说重要的"C"文件,你想删除所有还留在你home 目录里的文件。用通配符*c*检验所剩余的文件。为什么你不能用rm *c*删除?
(提示:试试ls *c* 看看)

15、删除所剩余的"c"文件:
$ rm *c[1-3]
$ ls
A Reports december november october september

完成:
一个良好组织的home 目录,文件都放在合适的子目录中。一些文件备份在/tmp/archive 目录中。

实验2:检测磁盘使用程度

假设:
你想检测系统上每个文件系统所剩余的空间。除此之外,你需要有个包含最占磁盘空间的目录的列表。

任务:
1、使用df 检测文件系统上剩余的空间。输出将类似于如下所示(这当然取决于你的机器安装和配置)。
$ df
Filesystem 1k-blocks Used Available User% Mounted on
/dev/hda5 12880648 1634344 10591988 14% /
/dev/hda1 36566 2476 32202 8% /boot

2、注意缺省的df 命令是以块(block)为单位输出的。试着使用-h 和-H 选项产生更人性化的输出:
$ df -h
Filesystem 1k-blocks Used Available User% Mounted on
/dev/hda5 12G 1.6G 10G 14% /
/dev/hda1 36M 2.5M 31M 8% /boot

$ df -H
Filesystem 1k-blocks Used Available User% Mounted on
/dev/hda5 13G 1.7G 10G 14% /
/dev/hda1 37M 2.6M 32M 8% /boot
两种选项有何区别?(用man df 查找答案)

3、在home 目录下使用du (disk usage)命令检测你的home 目录使用了多少空间。务必使用-h 选项产生人性化输出。

实验3:检测文本文件

任务:

1、首先,我们需要一个文本文件:
$ cd
$ cp /usr/share/dict/words .

2、使用cat 命令显示文件
$ cat words
Aarhus
Aaron
Ababa
......输出省略......
Zulu
Zulus
Zurich

3、cat 在这种情况下是一个糟糕的选择,因为输出翻屏得很快。试着使用less:
$ less words
Aarhus
Aaron
Ababa
......输出省略......
abducts
Abe
abed
......输出省略......
用less 你可以往回翻(用b)和往前翻(用空格键),一次一个屏幕。

4、若你只需要快速浏览一下一个文件的头部或者尾部,你可以使用head 或者tail:
$ head words
Aarhus
Aaron
Ababa
aback
abaft
abandon
abandoned
abndoning
abandonment
abandons

$ tail words
zoologically
zoom
zooms
zoos
Zorn
Zoroaster
Zoroasterian
Zulu
Zulus
Zurich
使用man 搜索head 和tail,找到可以修改显示行数、和显示的相对位置的选项。

哪个命令可以显示某文件的前50行?
哪个命令可以显示某个文件从25000行开始,到其结束?

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10617542/viewspace-945750/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10617542/viewspace-945750/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 目标检测的定义 目标检测(Object Detection)的任务是找出图像所有感兴趣的目标(物体),确定它们的类别和位置,是计算机视觉领域的核心问题之一。由于各类物体有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具有挑战性的问题。 目标检测任务可分为两个关键的子任务,目标定位和目标分类。首先检测图像目标的位置(目标定位),然后给出每个目标的具体类别(目标分类)。输出结果是一个边界框(称为Bounding-box,一般形式为(x1,y1,x2,y2),表示框的左上角坐标和右下角坐标),一个置信度分数(Confidence Score),表示边界框是否包含检测对象的概率和各个类别的概率(首先得到类别概率,经过Softmax可得到类别标签)。 1.1 Two stage方法 目前主流的基于深度学习的目标检测算法主要分为两类:Two stage和One stage。Two stage方法将目标检测过程分为两个阶段。第一个阶段是 Region Proposal 生成阶段,主要用于生成潜在的目标候选框(Bounding-box proposals)。这个阶段通常使用卷积神经网络(CNN)从输入图像提取特征,然后通过一些技巧(如选择性搜索)来生成候选框。第二个阶段是分类和位置精修阶段,将第一个阶段生成的候选框输入到另一个 CNN 进行分类,并根据分类结果对候选框的位置进行微调。Two stage 方法的优点是准确度较高,缺点是速度相对较慢。 常见Tow stage目标检测算法有:R-CNN系列、SPPNet等。 1.2 One stage方法 One stage方法直接利用模型提取特征值,并利用这些特征值进行目标的分类和定位,不需要生成Region Proposal。这种方法的优点是速度快,因为省略了Region Proposal生成的过程。One stage方法的缺点是准确度相对较低,因为它没有对潜在的目标进行预先筛选。 常见的One stage目标检测算法有:YOLO系列、SSD系列和RetinaNet等。 2 常见名词解释 2.1 NMS(Non-Maximum Suppression) 目标检测模型一般会给出目标的多个预测边界框,对成百上千的预测边界框都进行调整肯定是不可行的,需要对这些结果先进行一个大体的挑选。NMS称为非极大值抑制,作用是从众多预测边界框挑选出最具代表性的结果,这样可以加快算法效率,其主要流程如下: 设定一个置信度分数阈值,将置信度分数小于阈值的直接过滤掉 将剩下框的置信度分数从大到小排序,选值最大的框 遍历其余的框,如果和当前框的重叠面积(IOU)大于设定的阈值(一般为0.7),就将框删除(超过设定阈值,认为两个框的里面的物体属于同一个类别) 从未处理的框继续选一个置信度分数最大的,重复上述过程,直至所有框处理完毕 2.2 IoU(Intersection over Union) 定义了两个边界框的重叠度,当预测边界框和真实边界框差异很小时,或重叠度很大时,表示模型产生的预测边界框很准确。边界框A、B的IOU计算公式为: 2.3 mAP(mean Average Precision) mAP即均值平均精度,是评估目标检测模型效果的最重要指标,这个值介于0到1之间,且越大越好。mAP是AP(Average Precision)的平均值,那么首先需要了解AP的概念。想要了解AP的概念,还要首先了解目标检测Precision和Recall的概念。 首先我们设置置信度阈值(Confidence Threshold)和IoU阈值(一般设置为0.5,也会衡量0.75以及0.9的mAP值): 当一个预测边界框被认为是True Positive(TP)时,需要同时满足下面三个条件: Confidence Score > Confidence Threshold 预测类别匹配真实值(Ground truth)的类别 预测边界框的IoU大于设定的IoU阈值 不满足条件2或条件3,则认为是False Positive(FP)。当对应同一个真值有多个预测结果时,只有最高置信度分数的预测结果被认为是True Positive,其余被认为是False Positive。 Precision和Recall的概念如下图所示: Precision表示TP与预测边界框数量的比值 Recall表示TP与真实边界框数量的比值 改变不同的置信度阈值,可以获得多组Precision和Recall,Recall放X轴,Precision放Y轴,可以画出一个Precision-Recall曲线,简称P-R
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值