0%

Linux-CentOS7 笔记

基本概述

Linux文件

linux系统中一切皆文件。

Linux目录结构

  • /bin:Binary(二进制)的缩写,该目录存放着最经常使用的命令。
  • /boot: 启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。(不要动)
  • /dev : Device(设备)的缩写, 存放的是外部设备(访问设备的方式和访问文件的方式是相同的)。
  • /etc: 用来存放所有的系统管理所需要的配置文件和子目录。
  • /home:用户的主目录。每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
  • /lib:系统最基本的动态连接共享库。其作用类似于 Windows 里的 DLL 文件。(不要动)
  • /lost+found:一般情况下是空的,当系统非法关机后,这里就存放了一些文件。(存放突然关机的一些文件)
  • /media:系统会自动识别一些设备,例如U盘、光驱等等,当识别后,会把识别的设备挂载到这个目录下。
  • /mnt:供用户临时挂载别的文件系统,我们可以将光驱挂载在该目录上,然后进入该目录就可以查看光驱里的内容了。 (把一些本地的文件挂载在这个文件下)
  • /opt:主机额外安装软件所摆放的目录。比如安装一个 Oracle 数据库就可以放到这个目录下。默认是空的。
  • /proc:虚拟的目录,它是系统内存的映射,可以通过直接访问这个目录来获取系统信息。(不用管)
  • /root:系统管理员,也称作超级权限者的用户主目录。
  • /sbin:s 就是 super user 的意思,这里存放的是系统管理员使用的系统管理程序。
  • /srv:服务启动之后需要提取的数据。
  • /sys:这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs。
  • /tmp:用来存放临时文件。
  • /usr:用户的应用程序和文件都放在这个目录下,类似于 Windows 下的 program files 目录。
    • /bin: 系统用户使用的应用程序。
    • /sbin: 超级用户使用的比较高级的管理程序和系统守护程序。
    • /src: 内核源代码默认的放置目录。
  • /var:存放着在不断扩充着的东西,一般将那些经常被修改的目录放在这个目录下。包括各种日志文件。
  • /run:一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。
  • /www: 存放服务器网站相关的资源,环境,网站的项目

常用命令概述

  • ls 显示文件或目录
    • -l 列出文件详细信息l(list)
    • -a 列出当前目录下所有文件及目录,包括隐藏的a(all)
    • -h 优化打印文件的尺寸大小
  • mkdir 创建目录
  • -p 创建目录,若无父目录,则创建p(parent)
  • cd 切换目录
    • cd .. 返回上一级目录
    • cd ../.. 返回上两级目录
    • cd - 返回上次所在的目录
  • touch 创建空文件
  • echo 创建带有内容的文件。
  • cat 查看文件内容
  • cp 拷贝
  • mv 移动或重命名
  • rm 删除文件
    • -r 递归删除,可删除子目录及文件
    • -f 强制删除
  • find 在文件系统中搜索某文件
  • wc 统计文本中行数、字数、字符数
  • grep 在文本文件中查找某个字符串
  • rmdir 删除空目录
  • tree 树形结构显示目录,需要安装tree包
  • pwd 显示当前目录
  • ln 创建链接文件
  • more、less 分页显示文本文件内容
  • head、tail 显示文件头、尾内容
  • ctrl+alt+F1 命令行全屏模式
  • shutdowm 关机指令,你可以man shutdown 来看一下帮助文档。
    • -h hours:minutes & 按预定时间关闭系统,poweroff
    • -r 重启, shutdown -r now 等同于 reboot
    • -c 取消按预定时间关闭系统
  • sync 数据由内存同步到硬盘
  • logout 注销
  • tail 显示尾部几行 -n控制行数
  • history 查看已执行过得历史命令

服务器指令(雾

  • tail -f xxxx.log 实时刷新
  • nohup 命令 > 文件名.log 2>&1 &
  • 代理网址 https://ghproxy.com/

vim常用命令

一般模式

语法 功能描述
yy 复制当前行
(数字n) yy 复制一段(当前行到后n行)
(数字n) p 粘贴n次
(数字n) dd 删除n行
u 撤销上次操作
y$ 光标位置复制到行结尾
y^ 光标位置复制到行开头
d$ 光标位置删除到行结尾
d^ 光标位置删除到行开头
yw 复制一个单词(光标位置到单词结束)
dw 删除一个单词(光标位置到单词结束)
x 向后剪切,相当于del
shift + x (X) 向前剪切,相当于BackSpace
gg / shift + h (H) 移动到页首
shift + g (G) / L 移动到页尾
(数字n) gg / G 移动到第n行
r 替换
shift + r (R) 多字符替换,相当于Insert
w 下个词的开头
e 下个词的词尾
b 上个词的开头

编辑模式

按键 功能
i 当前光标前
a 当前光标后
I 光标所在行最前
A 光标所在行最后
o 光标所在行下一行
O 光标所在行上一行

指令模式

在一般模式当中,输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那一行。

命令 功能
:w 保存
:q 退出
:! 强制执行
/要查找的词 n 查找下一个,N 往上查找
:noh 取消高亮显示
:set nu 显示行号
:set nonu 关闭行号
:s/old/new 替换一行中的第一个匹配项
:%s/old/new/g 替换内容,%全文匹配,/g全部替换

vi,vim键盘图

网络配置

/etc/sysconfig/network-scripts/ifcfg-ens33

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="2e071f7c-84ad-488d-81f8-d76204e6768e"
DEVICE="ens33"
ONBOOT="yes"
#ip地址
IPADDR=192.168.129.100
#网关
GATEWAY=192.168.129.2
#域名解析器
DNS1=192.168.129.2

执行service network restart 重启网络

系统管理

Service服务管理

systemct l start | stop | restart | status 服务名

常用基本命令详解

bash全名 : bourne again shell

帮助命令

man 文档查看

语法:man 命令或配置文件

​ 使用 pgup 或 pgdn 翻页

help 获取shell内置命令的帮助信息

​ 一部分基础功能的系统命令是直接内嵌在shell中的,系统加载启动之后会随着shell一
起加载,常驻系统内存中。这部分命令被称为“内置(built-in) 命令”;相应的其它命令被
称为“外部命令”。

语法:help 命令

目录文档类

ls 列出目录的内容

语法:ls [选项] 目录或是文件

  • -a 列举全部文件及目录,包括隐藏文件(all)
  • -l 长数据串列举, 包含文件的属性与权限等数据,ll 等同于ls -l(可用alias查看)

​ 每行列出的信息依次是:文件类型与权限 链接数 文件属主 文件属组 文件大小用byte来表示 建立或最近修改的时间 名字

  • 当为[ d ]则是目录

  • 当为[ - ]则是文件;

  • 若是[ l ]则表示为链接文档 ( link file );

  • 若是[ b ]则表示为装置文件里面的可供储存的接口设备 ( 可随机存取装置 );

  • 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标 ( 一次性读取装置 )

cd 切换目录

语法:cd 目录名 (绝对路径都是以 / 开头,相对路径,对于当前目录改如何寻找 ./../)

  • .. 返回当前目录的上一级菜单
  • . 当前目录
  • - 返回上一次的目录

mkdir 创建文件夹

语法:mkdir [-mp] 目录名称

  • -m :配置文件的权限。直接配置,不需要考虑默认权限(umask)。
  • -p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来。

rmdir 删除文件夹

​ rmdir 仅能删除空的目录,如果下面存在文件,需要先删除文件,递归删除多个目录-p参数即可

touch/vim 创建空文件

语法:touch 文件名称

vi / vim 编辑文件

语法:vim 输出内容

cp 复制文件或目录

语法:cp [-r] 来源(source) 目标(destination)

  • -r 递归复制整个文件夹

rm 删除文件或目录

语法:rm [-i] deleteFile

  • -r 递归删除目录中的所有内容
  • -f 强制执行删除操作,不需要提示
  • -v 显示指令的详细执行过程

mv 移动文件或者目录(重命名)

​ mv oldNameFile newNameFile

​ mv /movefile /targetFolder

cat 查看文件内容

​ 查看文件内容(小文件),从第一行开始显示

​ 语法:cat [选项] 要查看的文件

  • -n 显示所有的行号,包括空行

more 文件内容分屏查看

语法:more 要查看的文件

操作 功能说明
space 向下翻页
enter 向下换行
q 退出more模式
ctrl+f 向下滚动一屏
ctrl+b 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号

less 文件内容分屏查看

​ less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强
大,支持各种显示终端。less 指令在显示文件内容时,并不是- -次将整个文件加载之后才显
示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。

语法:less 要查看的文件

操作 功能说明
space 向下翻页(基本操作同上)
pagedown 向下翻页
pageup 向上翻页
/字串 向下搜寻「字串」的功能:n:向下查找; N:向上查找
?字串 向上搜寻「字串」的功能:n:向下查找; N:向上查找
g 跳转到文档头
shift+g 跳转到文档尾

echo 输出内容到控制台

​ echo [选项] 输出内容

  • -e 支持反斜线控制的字符转换

head 显示文件头部内容

​ head 用于显示文件开头部分内容,默认情况下显示文件前10行内容。

语法:head [选项] 文件

  • -n <行数> 查看n行的文件内容

tail 输出文件尾部内容(追踪日志)

​ tail用于输出文件中尾部的内容,默认情况下线束文件的后10行内容。(tail -f跟踪的是文件的索引号,用vim改完后索引号也会改变,就导致tail跟踪不到)

语法:tail [选项] 文件

  • -n <行数> 查看n行的文件内容
  • -f 实时追踪文档的所有更新
  • ctrl+s 暂停
  • ctrl+q 结束暂停

history 查看已执行过得历史命令

​ 语法:history [选项] 行数

  • -c 清除历史记录
  • !<行数> 执行历史n行的指令

> 输出重定向和 >> 追加

语法:

ls -l > 文件 (覆写文件)

ls -al >> 文件 (追加到文件末尾)

​ echo 语句 >> 文件

用户管理类

1 useradd 添加新用户

useradd 用户名 添加新用户

useradd -g 组名 用户名 添加新用户到某个组

2 passwd 设置用户密码

passwd 用户名 设置用户密码

搜索查找类

1 find 查找文件或者目录

​ 从指定目录向下递归遍历其子目录,将满足条件的文件显示在终端。

语法:find [搜索范围] [选项] (默认从当前文件夹开始)

  • -name <查询方式> 按照指定的文件名查找模式来查找文件
  • -user <用户名> 查找属于指定用户名的所有文件
  • -size <(+/-)文件大小> 按照指定的文件大小查找文件,单位为:
    • b——块(512字节)
    • c——字节
    • w——字(2字节)
    • k——千字节
    • M——兆字节
    • G——吉字节

2 locate 快速定位文件路径

​ Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。

语法:

  1. locate 搜索文件

  2. updatedb 更新locate数据库

  3. which/whereis 定位命令

3 grep 过滤查找及“|”管道符号

语法:

​ 1. grep [选项] [查找内容] [源文件]

  • -n 显示匹配行和行号

​ 2. cat [文件] | grep -n [关键字]

3. grep [内容] | wc [文件]  统计字符数(wordcount)

压缩解压类

1 gzip/gunzip 压缩

语法:

1. gzip [文件名]   压缩文件,只能将文件压缩成*.gz文件
2. gunzip [文件名.gz]   解压缩文件

注意事项:

​ 1. 只能压缩文件不能压缩目录

​ 2. 不保留原来的文件

​ 3. 同时多个文件会产生多个安装包

2 zip/unzip 压缩

​ zip压缩命令在windows/linux都通用, 可以压缩目录且保留源文件。

语法:

  1. zip [选项] [文件名.zip] [将要压缩的内容] 压缩文件和目录
    • -r 压缩目录
  2. unzip [选项] [文件名.zip] 解压缩
    • -d <目录> 指定解压后文件的存放目录

3 tar 打包

语法:tar [选项] [xxx.tar.gz] [打包的内容] 打包目录

常用: -zcvf(压缩) / -zxvf(解压)

  • -c 产生.tar打包文件
  • -v 显示详细信息
  • -f 指定压缩后的文件名
  • -z 打包同时压缩
  • -x 解包.tar文件
  • -C 解压到指定目录

磁盘查看和分区类

du 查看文件和目录占用的磁盘空间