20145223《信息安全系统设计基础》第1周学习总结

20145223 《信息安全系统设计基础》第1周学习总结

教材学习内容总结

一、重要快捷键

(1)[Tab]:使用Tab键来进行命令补全,(输入某个命令开头的一部分然后按下Tab键就可以得到提示或者帮助完成),除此之外还有补全目录,补全命令参数

(2)常用快捷键:##

Ctrl+d	键盘输入结束或退出终端
Ctrl+s	暂定当前程序,暂停后按下任意键恢复运行
Ctrl+z	将当前程序放到后台运行,恢复到前台为命令fg
Ctrl+a	将光标移至输入行头,相当于Home键
Ctrl+e	将光标移至输入行末,相当于End键
Ctrl+k	删除从光标所在位置到行末
Alt+Backspace	向前删除一个单词
Shift+PgUp	将终端显示向上滚动
Shift+PgDn	将终端显示向下滚动

(3)键盘上的方向上键:恢复你之前输入过的命令

(4)Shell 常用通配符:##

字符	含义
*	匹配 0 或多个字符
?	匹配任意一个字符
[list]	匹配 list 中的任意单一字符
[!list]	匹配 除list 中的任意单一字符以外的字符
[c1-c2]	匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z]
{string1,string2,...}	匹配 sring1 或 string2 (或更多)其一字符串
{c2..c2}	匹配 c1-c2 中全部字符 如{1..10}

二、需要掌握的命令

(1)Linux命令

格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不需要选项也不需要参数

(2)man命令

man是manul的缩写,我们可以通过man man来查看man的帮助:

man printfman 1 printfman 3 printf说明这三者的区别

```man printf``:是普通的Linux命令

man 1 printf:是系统调用,操作系统的提供的服务接口

man 3 printf:是库函数, C语言中的函数

man -k选项结合grep命令和管道的应用:

(3)cheat命令

cheat命令是在GNU通用公共许可证下,为Linux命令行用户发行的交互式备忘单应用程序。它提供显示Linux命令使用案例,包括该命令所有的选项和简短但尚可理解的功能:

cheat find

(4)find命令————参考博客Linux find用法示例

find查找一个文件在系统中的什么位置,locate是神速版本的find

命令格式:·find path -option [ -print ] [ -exec -ok command ] {} \;

各项参数:

pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。
-print: find命令将匹配的文件输出到标准输出。
-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。
-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

常用find用法:

-name   filename             #查找名为filename的文件
-mtime   -n +n                #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime    -n +n               #按文件访问时间来查GIN: 0px">
-ctime    -n +n              #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-newer   f1 !f2               #查更改时间比f1新但比f2旧的文件
-type    b/d/c/p/l/f         #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size      n[c]               #查长度为n块[或n字节]的文件
-size      n[c]               #查长度为n块[或n字节]的文件
-depth                       #使查找在进入子目录前先行查找完本目录

示例:用find查找一个名为"a"的txt文件:

(5)locate命令

·locate指定用在搜寻符合条件的档案,它会去储存档案与目录名称的数据库内,寻找合乎范本样式条件的档案或目录录,可以使用特殊 字 元(如””或”?”等)来指定范本样式,如指定范本为kcpaner, locate会找出所有起始字串为kcpa且结尾为ner的档案或目录,如名称为kcpartner若目录录名称为kcpa_ner则会列出该目录下包括 子目录在内的所有档案。

·locate指令和find找寻档案的功能类似,但查询速度会较快。

·locate 有一个十分有用的选项 -r,它可以让你在搜索文件时使用正则表达式。

用法举例:

·~$ locate /etc/sh ---查找etc目录下所有以sh开头的文件
·$ locate -n 5 /soft/android --- 查看soft目录下以android开头的文件,限定只显示5个,使用 -n

(6)grep命令(功能:可以对文件全文检索)————参考博客Linux grep用法示例

执行cheat grep:

格式:grep [options]

[options]主要参数:

-c:只输出匹配行的计数。
-I:不区分大 小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。

pattern正则表达式主要参数:

\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\<:从匹配正则表达 式的行开始。
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
。:所有的单个字符。
* :有字符,长度可以为0。

(7)whereis命令

whereis,which告诉你使用的命令工具装在什么地方,比如用whereis firefoxwhich firefox这两个命令查找firefox所在的目录:

(8)apt-cache命令

具体用法:可以在使用apt-get install安装一个程序时先找找软件源的库里有没有这个程序,比如这周我们所需要安装的ddd调试工具:

Linux命令练习:

banner命令:

用户级文件权限管理:

·添加一个用户loutest

在 Linux 里面如何知道自己属于哪些用户组

·方法一:使用groups命令:

·方法二:查看/etc/group文件:

删除用户:

变更文件所有者:

·建立一个新用户test
·test建立a文件,切换回coast用户进行操作:

·最后结果:

修改文件权限:

Linux 目录结构

因为我们的环境的原因,每次新启动实验会清除系统恢复初始状态,所以需要手动更新软件包索引,以便我们安装时能找到相应软件包的源

sudo apt-get update

sudo apt-get install tree:

进入上一级目录:

$ cd ..

进入你的“home”目录:

$ cd ~ 

·或者 cd /home/<你的用户名>
使用 pwd 获取当前路径:

$ pwd

下面我们以你的"home"目录为起点,分别以绝对路径和相对路径的方式进入 /usr/local/bin 目录:

# 绝对路径
$ cd /usr/local/bin
# 相对路径
$ cd ../../usr/local/bin

Linux 文件的基本操作

·新建空白文件和新建目录:

复制文件:

删除文件:

移动文件与文件重命名:


查看文件

·使用cat,tac和nl命令查看文件
·比如我们要查看之前从"/etc"目录下拷贝来的passwd文件:

$ cat passwd

可以加上-n参数显示行号:

$ cat -n passwd

环境变量与文件查找

召唤“数字雨”:

文件打包与压缩

zip压缩打包程序:

使用unzip命令解压缩zip文件到当前文件夹:

一个有趣的作业:

简单文件系统操作

df 命令查看磁盘的容量:

使用 du 命令查看目录的容量:

召唤眼睛:

作业:

简单的文本处理

1.tr 命令 tr 命令可以用来删除一段文本信息中的某些文字。或者将其进行转换。

使用方式:

tr [option]...SET1 [SET2]

2.col 命令 col 命令可以将Tab换成对等数量的空格建,或反转这个操作。

使用方式:

col [option]

3.join命令 学过数据库的用户对这个应该不会陌生,这个命令就是用于将两个文件中包含相同内容的那一行合并在一起。

使用方式:

join [option]... file1 file2

作业:Space Invaders:太空侵略者

作业12:

教材学习中的问题和解决过程

·问题1:在安装cheat时系统报错“权限不够”:

解决过程1:在命令前添加sudo

·问题2:在linux系统中安装cheat 时,需要通过git来进行下载,如果之前没有下载git则无法正常进行安装:

·解决过程2:利用apt-get install安装git

·问题3:在删除用户时遇到的问题:

·解决过程3:需要进行用户的切换,当前用户不能为需要进行删除的用户

思想感悟

在经过了这一周的学习后,我从最开始的对Linux系统的一无所知,到现在初步能够通过一些简单的命令来进行系统的操作,我感觉自己的收获还是很大的。虽然自己对Linux系统知识的掌握还不是很全面,但是经过了这段时间的摸索和学习,我逐渐有了学好它的信心。知识是一步一步积累下来的,不能急于求成,所以要在开始就打好基础,这样后面的学习才会更加顺利。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 4000行 20篇 300小时
第一周 0/0 1/2 20/20

参考资料

posted @ 2016-09-18 20:38  145223  阅读(317)  评论(1编辑  收藏  举报