关于刘遄老师《Linux就该这样学》的相关学习笔记总结
这一章节中,主要讲解了一些常见并且比较重要的Linux命令。
系统内核: 计算机硬件是由运算器、控制器、存储器、输入/输出设备等共同组成的,系统内核就是让各种硬件设备各司其职且协同运行的东西。
Shell: 也称为终端或壳。 Shell为命令行工具,充当人与内核(硬件)之间的翻译官,用户把一些命令“告诉”终端,然后就会调用相应的程序服务区完成某些相应的工作。
- 常见的Linux执行命令格式为:命令名称 [命令参数] [ 命令对象]
- 命令参数有长格式、短格式两种表示方法,两者分别用–和-作为前缀。其中长格式和长格式,长格式和短格式之间不能进行合并,而短格式和短格式可以进行合并,合并之后仅保留一个 - 仅可。
按键 | 用途 |
---|---|
空格/PgDn | 向下翻一页 |
PgUp | 向上翻一页 |
home | 跳往首页 |
end | 跳往尾页 |
/ | 从上至下搜索某个关键词,如“/linux” |
? | 从下至上搜索某个关键词,如“?linux” |
n | 定位到下一个搜索到的关键词 |
N | 定位到上一个搜索到的关键词 |
q | 退出帮助文档 |
man就是manual(手册)的缩写。该命令为Linux中的帮助指令,通过该命令可以查看相应的帮助信息。
[root@linuxprobe ~]# man man |
---|
[root@linuxprobe ~]# echo LINUX
LINUX
作用:该命令用于显示及设置系统的时间或日期。
格式:date [选项][+指定的格式]
例如:
显示时间
[root@linuxprobe ~]# date
按照特定的格式查看时间
[root@linuxprobe ~]# date "+%Y-%m-%d %H:%M%S"
2020-4-6 15:30:00
设置时间
[root@linuxprobe ~]# date -s "20200406 18:00:00"
查看今天是当年的第几天
[root@linuxprobe ~]# date "+%j"
[root@linuxprobe ~]# pidof sshd
2156
[root@linuxprobe ~]# kill 2156
若系统中正在执行一个命令,想要立即停止,可以使用快捷键Ctrl+C;
如果有些命令在执行时不断地在屏幕上输出信息,可以在执行命令时在末尾添加一个&符号,这样命令将进入系统后台执行。
作用:该命令用于查看系统内核与系统版本等信息。
格式: uname [-a]
查看当前系统版本的详细信息,则需要查看redhat-release文件
[root@linuxprobe ~]# cat /etc/reshat-release
工作目录指的是用户当前在系统中所处的位置。
Linux系统中“一切都是文件”,对服务程序进行配置实际上就是编辑程序的配置文件。
[root@linuxprobe ~]# head -n 20 initial-setup-ks.cfg
[root@linuxprobe ~]# cut -d: -f1 /etc/passwd
作用:用于比较多个文本文件的差异。
格式:diff [参数] 文件
参数:
确认两个文件是否不同 --brieff
详细比较多个文件的差异之处 -c
例如:
[root@linuxprobe ~]# diff --brief diff_A.txt diff_B.txt
Files diff_A.txt and diff_B.txt differ
[root@linuxprobe ~]# diff -c diff_A.txt diff_B.txt
这一部分主要讲解的是关于文件的创建、修改、剪切、复制、更名与删除等操作。
[hanna7@hanna ~]# touch -d "2020-04-09 10:00" anaconda-ks.cfg
[hanna7@hanna ~]# mkdir linuxprobe
结合-p参数递归创建具有嵌套叠层关系的文件目录[hanna7@hanna ~]# mkdir -p a/b/c/d
参数 | 作用 |
---|---|
-p | 保留原始文件的属性 |
-d | 若对象为“链接文件”,则保留该文件的属性 |
-r | 递归持续复制(用于目录) |
-i | 若目标文件存在则询问是否覆盖 |
-a | 相当于-pdr |
参数 | 作用 |
---|---|
if | 输入的文件名称 |
of | 输出的文件名称 |
bs | 设置每个“块”的大小 |
count | 设置要复制的“块”的个数 |
例如
从/dev/zero设备文件中取出一个大小为560MB的数据块,然后保存成名为560_file的文件
[hanna7@hanna ~]# dd if=/dev/zero of=560_file count = 1 bs=560M
把光驱设备中的光盘制作成iso格式的镜像文件
[hanna7@hanna ~]# dd if=/dev/cdrom of=RHEL-server-7.0-x86_64-LinuxProbe.Com.iso
这一部分主要是关于文件的打包压缩与解压,以及让用户基于关键词在文本文件中搜索相匹配的信息、在整个文件系统中基于指定的名称或属性搜索特定的文件。
[hanna7@hanna ~]# find / -user hanna -exec cp -a { } /root/findresults/ \;
1.在RHEL 7 系统及众多的Linux 系统中,最常使用的Shell 终端是什么?
答:==Bash(Bourne-Again SHell)==解释器。
2.执行Linux 系统命令时,添加参数的目的是什么?
答:为了让Linux 系统命令能够更贴合用户的实际需求进行工作。
3.Linux 系统命令、命令参数及命令对象之间,普遍应该使用什么来间隔?
答:应该使用一个或多个空格进行间隔。
4.请写出用echo 命令把SHELL 变量值输出到屏幕终端的命令。
答:echo $SHELL。
5.简述Linux 系统中5 种进程的名称及含义。
答:在Linux 系统中,有下面5 种进程名称。
R(运行):进程正在运行或在运行队列中等待。
S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态。
D(不可中断):进程不响应系统异步信号,即便用kill 命令也不能将其中断。
Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数
后将进程释放。
T(停止):进程收到停止信号后停止运行。
6.请尝试使用Linux 系统命令关闭PID 为5529 的服务进程。
答:执行kill 5529 命令即可;若知道服务的名称,则可以使用killall 命令进行关闭。
7.使用ifconfig 命令查看网络状态信息时,需要重点查看的4 项信息分别是什么?
答:这4 项重要信息分别是网卡名称、IP 地址、网卡物理地址以及RX/TX 的收发流量数据大小。
8.使用uptime 命令查看系统负载时,对应的负载数值如果是0.91、0.56、0.32,那么最近15分钟内负载压力最大的是哪个时间段?
答:通过负载数值可以看出,最近1 分钟内的负载压力是最大的。
9.使用history 命令查看历史命令的执行记录时,命令前面的数字除了排序外还有什么用处?
答:还可以用“!数字”的命令格式重复执行某一次的命令记录,从而避免了重复输入较长命令的麻烦。
10.若想查看的文件具有较长的内容,那么使用cat、more、head、tail 中的哪个命令最合适?
答:文件内容较长,使用more 命令;反之使用cat 命令。
11.在使用mkdir 命令创建有嵌套关系的目录时,应该加上什么参数呢?
答:应该加上==-p ==递归迭代参数,从而自动化创建有嵌套关系的目录。
12.在使用rm 命令删除文件或目录时,可使用哪个参数来避免二次确认呢?
答:可使用== -f ==参数,这样即可无需二次确认。
13.若有一个名为backup.tar.gz 的压缩包文件,那么解压的命令应该是什么?
答:应该用tar 命令进行解压,执行tar -xzvf backup.tar.gz 命令即可。
14.使用grep 命令对某个文件进行关键词搜索时,若想要进行文件内容反选,应使用什么参数?
答:可使用==-v== 参数来进行匹配内容的反向选择,即显示出不包含某个关键词的行。