博主名取自《小羊肖恩》中的小羊肖恩,名字为:肖恩,音译为Sean,自己取的姓:阿奇,为符合我们的阅读习惯,连起来组成为ArchieSean。博主志在将博客打造成为个人线上笔记的技术栈,方便自己也方便他人。如博客中有任何错误,请各位指出,谢谢大家
写在前边的话:若文章有任何问题,可以点击链接,跳转我的个人小站,点击QQ图标,即可与我临时会话
系统特点
- 开放性(开源)、多用户、多任务、良好的用户界面、优异的性能与稳定性。
linux命令
关机命令
- shutdown -h now 正常关机
- halt 关闭内存
基础命令
查看文件列表: ls
- 表示列表
- 用法:
1. ls 列出当前工作目录下的文件/文件夹的名称
2. ls 路径 列出指定目录下的文件/文件夹的名称
3. ls 选项 路径
含义: 在列出指定路径下的文件/文件夹的名称,并以指定的格式显示
常用的语法:
ls -l 路径
ls -la 路径
选项的解释:
-l 表示list,以列表的形式进行展示
-a 表示显示所有的文件/文件夹(包含隐藏文件)
4. ls -lh 路径
含义: 列出指定路径下的文件/文件夹的名称,以阅读性较高的形式显示
**第一列表示文件的类型
“-”表示是一个文件
“d”表示是一个文件夹
**
常看当前目录: pwd
- 用法: pwd (print working directory)
- 含义: 打印当前工作目录
切换目录: cd
- 作用: 切换当前目录
- 用法: cd 路径
cd .. 切换到上一层目录
cd / 切换到系统根目录
cd ~ 切换到用户主目录
cd - 切换到上一个所在目录
创建目录: mkdir
- 用法: mkdir 路径
- 用法: mkdir -p 路径
- 含义: 一次创建多个文件
- 用法: mkdir 路径1 路径2 路径3
- 含义: 一次创建多个同级的文件夹
删除目录: rmkdir
- 用法: rmikdir 路径
创建空文件: touch
- 用法: touch 文件路径
- 用法: touch 文件路径1 文件路径2
- 含义: 可一次创建多个文件
复制: cp
- 用法: cp 被复制的文档路径 文档复制到的位置
- 含义: 将某个文件复制到什么目录下
** 注意: 在cp过程中,可以改名,但是不建议改**
** [在复制文件夹的时候,需要加上“-r”,不然会被忽略。]**
移动: mv
- 用法: mv 需要移动的文档 目标位置
- 作用: 移动文档到指定的位置
- 这个可以进行改名操作
删除: rm
- 作用: 移除或者删除一个文档
- 语法: rm 选项 需要移除的文档
- 选项:
- -r 表示递归
- -f 表示不询问
编辑器 :vim
- 语法: vim 文件的路径
- 作用: 编辑文件
- 退出打开的文件: shift+英文冒号 再输入q,回车即可
输出重定向
- 一般命令的输出都是显示在终端中,有些时候需要将一些命令的执行结果保存在文件中,进行后续的分析/统计,这个时候就需要输出重定向。
- 语法:
-
重定向输出,覆盖原有内容
-
重定向输出,又追加内容
-
- 使用: 正常指定 >/>> 文件路径
显示文件内容: cat
- 作用1: cat有 直接 打开一个文件的功能
- 语法: cat 文件的路径
- 作用2: cat还可以对文件进行合并
- 语法: cat 待合并的文件路径1 待合并的文件路径2 …
查找符合条件的字符串:grep
- 语法: grep 要查找的字符
进阶指令(重点)
df
- 作用: 查看磁盘空间
- **用法: df -h **
- 表示用可读性较高的形式显示
free
- 作用: 查看内存使用情况
- 语法: free -m
- 表示以mb为单位进行查看
head
- 作用: 查看一个文件的前n行,如果不指定,默认显示前10行
- 语法: head -n 文件路径 [n:表示数字]
tail
- 作用: 查看一个文件的后n行
- 语法: tail -n 文件的路径 [n: 表示数字]
- 语法: tail -f 文件路径
- 含义: 查看一个文件的动态变化
一般用于查看系统的日志
- 含义: 查看一个文件的动态变化
less
- 作用: 查看文件,以较少的内容进行输出,按下辅助功能键(数字+回车、空格键+上下方向键)查看更多。
- 语法: less 需要查看的文件路径
wc
- 作用: 统计文件内容信息(包括行数、单词数、字节数)
- 语法:
wc -lwc 需要统计的文件路径
-l 表示lines 行数 [常用]
-w 表示word 单词数(依照空格来判断单词的数量的)
-c 表示bytes 字节数
date(重点)
- 作用: 表示是操作时间日期(读取、设置)
- 语法:
用法1: date
用法2: date +%F (等价于date "+%Y-%m-%d")输出年月日
用法3: date +%T 输出时分秒
用法3: date “+%F %T” 输出年月日时分秒
语法4: 获取之前或者之后的某个时间(备份)
往前推一天: date -d “-1day” “%F %T”
往后推一天: date -d “+1day” “%F %T”
**day可以更改为 年 year/ 月 month
cal
- 作用: 用来操作日历的。
- 语法:
1. cal (等价于 cal -1) 直接输出当前月份的日历
2. cal -3 输出本月及其上月、下月的日历
3. cal -y 年份 输出某一年的日历
clear/ctrl+L指令
- 作用: 终端清屏
- 语法: clear 或者快捷键 ctrl+L
管道(重点)
- 管道符: |
- 作用: 管道一般可以用于:
- 过滤
- 特殊
- 扩展处理
- 使用: 必须结合之前的命令一起使用
- 例如: 查找根目录下包含y字符的文件
- 实现: ls /|grep y
- 上面命令的说明: 前边的命令有个输出,该输出是后面命令的输入
高级指令
hostname
- 作用: 操作主机名(读取、设置)
- 语法:
语法1: hostname
作用: 输出主机名
语法2: hostname -f
作用: 表示输出当前主机名中的FQDN(全限定类名)
id
- 作用: 查看一个用户的一些基本信息(包含,用户id,用户组id,附加组id…),该指令,如果不指定用户,则默认当前用户
- 语法:
语法1: id 默认显示当前执行该命令的用户的基本信息
语法2: id 用户名
作用: 表示显示该用户的基本信息
- 验证上述信息是否正确:
- 验证用户信息: 通过文件/etc/passwd
- 验证用户组信息: 通过文件/etc/group
whoami
- 作用: “我是谁?”,表示当前登录的用户名,一般用于shell脚本,用于获取当前操作的用户名方便记录日志。
- 语法: whoami
ps -ef (重点)
- 指令: ps
- 作用: 用于查看服务器的进程相关信息
- 选项含义:
- -e: 等价于“-A”,表示列出全部的进程。
- -f: 显示全部的列(显示全字段)
图中各个字段的含义:
UID: 执行该进程的用户id
PID: 进程id
PPID: 该进程对应的父级进程id
C: cpu的占用率,表现为百分比
STIME: 进程的启动时间
TTY: 终端设备,发起该进程的设备识别符号,如果显示“?”,则表示该进程并不是由终端设备发起的。
TIME: 进程的执行时间
CMD: 该进程的名称或者对应的路径
- 应用: 在ps的进程中过滤出我们想要查看的进程
ps -ef|grep 进程名称
top (重点)
- 作用: 查看服务器进程占的资源
- 语法:
- 直接输入 top (动态显示的)
上图列名信息:
PID: 进程id
USER: 该进程对应的用户
PR: 优先级
UIRT: 虚拟内存
RES: 常驻内存
SHR: 共享内存
计算内存: 剩余内存=RES-SHR
S: 表示的是进程的状态(sleeping)
TIME: 执行的时间
=================下边的需要记住============================
%CPU: CPU的占用率
%MEM: 内存的占用率
COMMAND: 进程的名称或者路径
- 方便操作:在执行top指令之后,在键盘上按下
M
作用: 按照内存(MEM) 从高到底降序排列
P
作用: 按照CPU的使用率降序排列
1
作用: 当服务器拥有多个cpu的时候,可以切换展开显示各个cpu的详细信息。
du -sh
-
作用; 查看目录的真实大小
-
语法: du -sh 路径
-
选项:
- -s: summary,只显示汇总的大小
- -h: 表示较高可读性的形式显示
-
应用: 显示文件的实际大小
find
- 作用: 用于查找文件(其参数有55个)
- 语法: find 路径范围 选项 选项的值
- 选项:
- -name: 按照文档名称进行搜索(支持模糊搜索)
- -type: 按照文档的内省进行搜索
文档类型:
“-” 表示是文件(在使用find的时候需要用“f”来替换)
“d” 表示是文件夹
-
应用: 查找etc下的所有后缀为.conf的文件
-
应用: 使用find来搜索/etc/sane.d/目录下的所有文件
service(重点)
- 作用; 用于控制一下软件的服务(启动/重启/停止)
- 语法: service 服务名 start/restart/stop
- 应用
1. 开启本机安装的Apache(网站服务器的软件),其服务名为httpd
语法: service httpd start
* 通过ps命令来检查httpd服务是否启动:
ps -ef | grep httpd
kill (重点)
- 作用: 表示杀死进程
- 语法: kill 进程PID (语法需要配合ps一起使用)
比kill更好用的命令: killall 进程名称
ifconfig (重点)
- 作用: 用于操作网卡的指令
- 语法: ifconfig
reboot
- 作用: 重新启动计算机
- 语法1: reboot
- 语法2: reboot -w (模拟重启,只写开关机的日志信息)
shutdown
- 作用: 关机 (慎用)
- 语法1: shutdown -h now “关机提示”
- 取消关机设置: shutdown -c (只限于7.0之后的版本),别的可以使用快捷键ctrl+c
- 语法2:
关机的命令还有:
1. init 0
2. halt
3. poweroff
uptime
- 作用: 输出计算机的在线时间(计算机从开机到现在的运行时间)
- 语法: uptime
uname
- 作用: 获取操作系统相关的信息
- 语法1: uname 获取操作系统的类型
- 语法2:uname -a 表示获取全部系统信息(类型、全部主机名、内核版本、发布时间、开源计划)
netstat -tnlp
- 作用: 查看网络的连接状态
- 语法: netstat -tnlp
选项说明:
-t: 表示只列出tcp协议的连接
-n: 表示将地址转换成ip,协议转化为端口号
-l: 表示过滤出”state“(状态) 列中值为LISTEN(监听)的连接。
-p: 表示显示发起连接进程pid和进程名称。
man
- 作用; manual 手册(包含了linux中全部命令的手册)
- 语法: man 命令 (退出按一下q键)
vim的使用
vim介绍
- vim是linux中的编辑器,不同的是,vim比较高级,可以视为vi的升级版。
- vim重点是光标的移动,模式切换,删除,查找替换,复制,粘贴,撤销命令的使用。
三种模式(重点)
- 命令模式:
该模式下不能直接对文件进行编辑,可以输入快捷键进行一些操作(删除行、复制行、移动光标、粘贴等等)。[打开文件默认的模式]
- 编辑模式:
在该模式下,可以对文件的内容进行编辑。
- 末行模式;
可以在末行输入命令,对文件进行操作(搜索、替换、保存、退出、高亮)
** 常见的打开文件的方式(4种)**
1. vim 文件路径
作用: 打开指定的文件
2. vim +数字 文件的路径
作用: 打开指定的文件,并且将光标移动到指定行
3. vim +/关键词 文件的路径
作用: 打开指定的文件,并且高亮显示关键词
4. vim 文件路径1 文件路径2 文件路径3
作用: 同时打开多个文件
- 重点: 先复制/etc/passwd文件到当前用户的家目录下:
后续的操作都基于这个文件进行操作。
命令模式
- 光标移动
(1)将光标移动到行首:
按键: shift+6
(2)将光标移动到行尾:
按键: shift=4
(3)将光标移动到首行:
按键: gg
(4)将光标移动到末行:
按键: G 或者 shift+g
(5)翻屏:
按键: ctrl+b(before) 或者 pgup
ctrl+f (after) 或者 pgdo
- 扩展
1. 快速将光标移动到指定的行
按键: 数字G
2. 光标向上或者向下移动n行
按键: 数字 ↑, 数字 ↓
3. 以当前光标为准,向左或者向右移动
按键: 数字 ← , 数字 →
4. 末行模式下的光标快速移动(移动到指定的行)
按键: 英文冒号 数字
模式间的切换 (重点)
末行模式
-
进入方式: 在命令模式进入,按下“:” 即可进入。
-
退出方式:
- 按下esc
- 连按2次esc
- 删除末行全部输入字符
-
保存操作(write):
- 输入“:w” 保存文件
- 输入“:w 路径” 另存为 -
保存并退出:
- 输入“:wq” 保存并退出
-
强制(!)
- 输入“:q!” 表示强制退出
-
调用外部命令:
- 输入“!外部命令”
-
搜索/查找
- 输入“/关键词”
- 在搜索结果中切换上/下,输入“N/n”
-
显示行号:
- 输入“:set nu” [number]
- 如果想取消显示,则输入;":set nonu"
-
扩展2: 使用vim同时打开多个文件,在末行模式下切换文件
- 查看当前已经打开的文件名称: “files”
在%a的位置有2种显示的可能:
%a: a表示active ,表示当前正在打开的文件
#: 表示上一个打开的文件
切换文件的方式
- 如果需要指定切换文件的名称,则可以输入: “:open 文件名”
- 可以通过其他命令,切换上一个文件/下一个文件
- 输入:“:bn” 表示切换下一个文件
- 输入:“:bp” 表示切换上一个文件
编辑模式
- 退出方式: 按下esc键
实用功能
- 代码着色:
- 显示: “:syntax on”
- 关闭显示: “:syntax off”
- vim中的计算器的使用:
- 当在编辑文件的时候,需要用计算器计算一些公式,此时需要退出。vim集成了一个简易的计算器。
第一步: 进入编辑模式
第二步: 按下按键“ctrl+R”,然后输入“=”,此时光标会到最后一行。
第三步: 输入数据,按回车即可
扩展
- vim的配置(重点)
vim有三种配置:
1. 在文件打开的时候,末行模式下输入的配置(临时的)
2. 个人配置文件(~/.vimrc,如果没有可以自己新建一个)
===================================
a. 新建好个人配置文件之后,进入编辑
b. 在配置文件中进行配置,设置行号: set nu
===================================
3. 全局配置文件(vim自带的,/etc/vimrc)
- 异常退出
- 在编辑文件之后没有正常的去wq(保存退出),而是突然关闭终端或者断电的时候,则会发生异常退出
- 解决办法: 将隐藏的交换文件(在编辑过成中临时产生的临时文件)删掉即可。
删除交换文件:
rm -f .文件名.swp
- 别名机制(实用)
作用: 相当于创建一些属于自己的自定义命令
别名机制依靠一个**映射**文件: ~/.bashrc
注意: 当设置了别名之后,要再次使用该账户登录即可生效。
- 退出方式
vim之前的关闭命令“:q”,“:wq”
除了上边的命令之外,vim还支持另外一种推出方式“:x”
说明:
① “:x” 在文件没有修改的时候,表示直接退出;在文件修改的情况下,表示保存并退出;
②如果文件没有被修改,使用“:wq”时,会刷新文件的修改时间。如果文件没有被修改,使用“:x”时不会刷新文件的修改时间。主要会混淆用户对文件的编译时间。
===================
3. 全局配置文件(vim自带的,/etc/vimrc)
* 异常退出
- 在编辑文件之后没有正常的去wq(保存退出),而是突然关闭终端或者断电的时候,则会发生异常退出
- 解决办法: 将隐藏的交换文件(在编辑过成中临时产生的临时文件)删掉即可。
删除交换文件:
rm -f .文件名.swp
* 别名机制(实用)
作用: 相当于创建一些属于自己的自定义命令
别名机制依靠一个映射文件: ~/.bashrc
注意: 当设置了别名之后,要再次使用该账户登录即可生效。
* 退出方式
vim之前的关闭命令“:q”,“:wq”
除了上边的命令之外,vim还支持另外一种推出方式“:x”
说明:
① “:x” 在文件没有修改的时候,表示直接退出;在文件修改的情况下,表示保存并退出;
②如果文件没有被修改,使用“:wq”时,会刷新文件的修改时间。如果文件没有被修改,使用“:x”时不会刷新文件的修改时间。主要会混淆用户对文件的编译时间。
如有任何问题,可以在文章开头联系到我,谢谢。