一 概述
我们在使用Linux操作系统的时候,经常需要利用一些命令进行系统工作,系统状态,工作目录,文件,目录,打包压缩与搜索等操作。
二 回顾系统内核与SHELL
通常来讲,计算机硬件是由运算器,控制器,存储器,输入/输出设备等共同组成的,但是我们需要通过系统内核使得各种硬件各司其职且又能协同运行。
Linux系统的内核负责完成对硬件资源的分配,调度等管理任务,所以系统内核十分重要,所以我们不应该直接对内核进行操作。所以Linux系统会让我们通过基于系统调用接口开发出的程序或服务来管理计算机。
Linux系统中有一些图形化工具(比如逻辑卷管理器[Logical Volume Manager,LVM])确实非常好用,但是很多的图形化工具实际上是调用脚本来完成相应的工作,往往只是为了完成某种特定的工作而设计的,失去了Linux命令原有的灵活性及可控性。除此之外,图形化工具相较于Linux命令行界面会消耗更多的系统资源,所以命令行模式运行相对高效很多。
上图即为,Linux系统的用户通过程序或服务调用系统调用接口来完成对系统内核的使用。
Shell(也称为终端或壳),实际上它是一种命令行工具,它可以作为用户与内核之间交互的使者,用户将一些命令输入终端,然后它就会调用相应的程序服务区完成某些工作。
三 执行查看帮助命令
长格式命令
man --help
短格式命令
man -h
man命令中常用的按键以及作用
按键 | 按键作用 |
空格键 | 向下翻一页 |
PgUp | 向上翻一页 |
PgDn | 向下翻一页 |
home | 直接前往首页 |
end | 直接前往尾页 |
/ | 从上至下搜索某个关键词 |
? | 从下至上搜索某个关键词 |
n | 定位到下一个搜索到的关键词 |
N | 定位到上一个搜索到的关键词 |
q | 退出帮助文档 |
四 常用的系统工作命令
1. echo命令:在终端输出字符串或者变量提取后的值
echo [字符串/$变量]
2 date命令:用于显示及设置系统的时间或日期。
date [选项] [+指定的格式]
date命令中的参数及其作用
参数 | 参数作用 |
%S | 秒(00 ~ 59) |
%M | 分钟(00 ~ 59) |
%H | 小时 (00 ~ 23) |
%I | 小时 (00 ~ 12) |
%m | 月份 (1 ~ 12) |
%p | 显示出AM或PM |
%a | 缩写的工作日名称(如:Sun) |
%A | 完整的工作日名称(如:Sunday) |
%b | 缩写的月份名称(如:Jan) |
%B | 完整的月份名称(如:January) |
%q | 季度(1 ~ 4) |
%y | 简写年份(例如:20) |
%Y | 完整年份(例如:2020) |
%d | 本月中的第几天 |
%j | 今年中的第几天 |
%n | 换行符(相当于按下回车键) |
%t | 跳格(相当于按下Tab键) |
五 终止进程的命令
kill命令:用于终止某个指定PID的服务进程
kill [参数] [进程PID]
killall命令:用于终止某个指定名称的服务所对应的全部进程
killall [参数] [服务名称]
六 free命令
free命令用于显示当前系统中内存的使用量信息
free -h
七 CP命令
cp命令用于复制文件或目录
cp [选项] 源文件 目标文件
注意:
- 如果目标文件是目录,则会把源文件复制到该目录中
- 如果目标文件也是普通文件,则会询问是否需要覆盖它
- 如果目标文件不存在,则执行正常的复制操作。
CP命令的参数及其作用
参数 | 作用 |
-p | 保留原始文件的属性 |
-d | 若对象为“链接”文件,则保留该“链接文件”的属性 |
-r | 递归持续复制(用于目录) |
-i | 若目标文件粗在则询问是否覆盖 |
-a | 相当于-pdr (p,d,r为上述参数) |
八 MV命令
mv命令用于剪切文件或将文件重命名
mv [选项] 源文件 [目标路径][目标文件名]
九 tar命令
tar命令用于对文件进行打包压缩或解压
tar [选项] [文件]
tar命令的参数及其作用
参数 | 参数的作用 |
-c | 创建压缩文件 |
-x | 解开压缩文件 |
-t | 查看压缩包内哪些文件 |
-z | 用Gzip压缩或解压 |
-j | 用bzip2压缩或解压 |
-v | 显示压缩或解压的过程 |
-f | 目标文件名 |
-p | 保留原始的权限与属性 |
-P | 使用绝对路径来压缩 |
-C | 指定解压到的目录 |