Linux基础操作命令

一:系统目录结构部分

hostnamectl set-hostnamehostnamectl

vi /etc/hostname 永久修改主机名

/etc/hosts 建立名称和地址的对应关系

/etc/fstab 实现磁盘设备的开机自动挂载

/etc/rc.local 文件中的命令信息,再开机的时候会自动执行

注意在文件中添加信息 echo mount /dev/cdrom /mnt >> /etc/rc.local 要用双大于号,因为只有一个的话是会进行清空再写入

5.系统的运行级别

centos6 (级别)

0 关机级别

1 单用户级别 (重置密码)

2 多用户模式级别 无网络

3 多用户模式级别 有网络

4 预留

5 图形化级别

6 重启级别

查看当前级别 :runlevel

修改当前级别:init 级别数值 (临时修改)

永久修改: vi /etc/inittab

centos7(target)

ll /usr/lib/systemd/system/runlevel*target

查看6里面的级别对应7里面的形似

查看级别:target

systemctl get-default

修改target

systemctl set-default

6.变量信息和别名信息配置文件

cat /etc/profile

作用:设置环境变量信息和程序启动相关的信息 为了对登录之后的系统环境做准备

2.可以配置函数和别名功能 最好配置在/etc/bashrc

变量:

普通变量:使简化脚本的编写

环境变量:系统的环境配置有关 PATH (可以让命令操作可便捷)

which 查看命令的位置在哪

别名:1.让命令操作更简单 长的命令变短(短命令 -别名)

2.让危险的操作更安全

别名设置方法:

临时设置:

alias 别名 = ‘命令信息’

ls -a 查看隐藏文件,Linux系统中隐藏文件都是以.开头

7.登录之后提示文件:

/etc/motd

8.登录之前提示文件

/etc/issue

/etc/issue.net

如何清空文件内容 ---> echo "" > /etc/issue >/etc/issue

9.和程序软件安装的相关目录

/usr/local

系统中如何安装软件(吃饭)

01:订餐点外卖 (做好的饭 筷子) yum安装软件 简单快捷

02:买半成品 (速冻饺子 加工) rpm安装软件 需要软件安装包

03:自己做饭 (买食材,做饭) 编译安装软件 可以灵活调整

yum安装:

修改yum仓库--yum源文件

1.本地配置yum源文件 /etc/yum.repos.d/ 下的CentOS-Base.repo 网址寻找方式:去阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 点击centos 即可复制这条命令curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

2.yum install vim

软件安装排错说明:1.能不能访问外网 ping www.baidu.com

a.访问外网IP地址不通 -- 网卡地址配置有问题

b.访问外网名称不通 ---- DNS配置有问题

2.检查是否以及有下载的进程

ps -ef == windows 任务管理器 pid等于进程编号

kill pid (杀死进程) kill -9 pid(强制杀死进程)

10.日志文件保存目录

ll /var/log

两个重要的日志文件:1.messages --> 记录系统或服务程序运行的状态信息 和错误信息

  1. secure ---> 记录的用户登录信息

    tail -f /var/log/secure --> 看倒数几行的信息(默认查看十行 -f 追踪文件的信息)

    head --> 查看前面几行的信息 (默认查看十行)

11.系统硬件信息查看方法

Cpu :

利用文件进行查看:cat /proc/cpuinfo

model name : Intel(R) Core(TM) i5-9400 CPU @ 2.90GHz

physical id : 0 表示cpu颗数 1颗 越多并行越高

processor : 0 表示cpu核数 1核

cpu cores : 1

利用命令查看: lscpu -->等价于调取了 cpuinfo文件中的内容

Socket(s):插槽 --> 显示服务器有多少颗cpu

Core(s) per socket --》 每个cpu有几个核

负载:(cpu处理任务过多) 负载值越高压力越大

利用文件进行查看:cat /proc/loadavg

0.00 0.01 0.05 负载值和cpu核数有关

一分钟平均 五分钟平均负载 15分钟平均负载

4核服务器--负载值3左右就要关注 100核服务器---负载值100(数据库服务器)

利用命令查看: w (-h 以g为单位显示)

内存:

利用文件进行查看:cat /proc/meminfo

利用命令查看: free -h (-h 以g为单位显示)

磁盘信息/挂载信息

利用文件进行查看:cat /proc/mounts

利用命令查看: df (-h 以g为单位显示)

sourece 立即加载文件信息

/etc/profile

/etc/bashrc

~/.bashrc

~/.bashrc_profile

二:系统优化操作

1.vi 命令基本用法

1)vi 命令打开文件

2)输入i ---- 进入编辑状态

3) esc --- 退出编辑状态

4)wq ----保存退出文件

2.vi 命令详细使用方式

vi有三种模式(互相切换)

1)命令模式(编辑模式)

2)插入模式

3)底行模式

三种模式的切换方法:直接进入的时候就是命令模式,输入(i--插入模式,I--在一行的行首插入,o--所在行的后面兴建一行进行写,O--所在行的前面兴起一行进行编辑,A--在行尾进行编辑,a--讲光标移动到右边的下一个字符进行编辑,C--将光标到行尾的内容进行删除并进入编辑状态,cc--将整行内容进行删除并进入编辑状态)

只移动光标不进入编辑模式(

1.将一行的内容进行时删除 -----dd

复制n行 ------ nyy

将dd了的内容粘贴到光标的下一行 ---- p

2.将多行内容进行删除 ------ 3dd

3.将错误操作如何还原 ------ u

4.将光标快速切换到首部 ---- ngg(n表示移动到第几行)

5.将光标移动到行首 ---G

7.将光标移动到一行的结尾 -----$

)

底行状态:/ 搜索状态(n向下搜索)

? 搜索状态 (n向上搜索)

3.系统优化方法(基础优化)

1)了解系统环境

两个命令:cat /etc/redhat-release ---- 查看系统的发行版本

            uname -a ---- 查看详细信息man uanme ----查看uname有哪些参数

Linux cz-01 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

2)企业中管理系统用户身份是不同的

ps1

普通用户如何创建

useradd

passwd 用户名

普通用户如何切换

su

普通用户如何查看身份

whoami

$在界面中表示普通用户

#在界面中表示管理者

查看用户是否存在;

id - 用户名

3)操作系统优化 -- 命令提示符优化

1.优化方法:修改ps1环境变量

echo $PS1 ​ [\u@\h \W]$

默认配置:

\u ----- 显示当前登录用户的名称

\h ----- 显示系统主机名称

\W ------ 显示当前所在目录信息(目录结构的最后结构信息)

2.命令提示符的颜色如何优化

        \tail -1 /etc/profile

export PS1='[\e[32;1m][\u@\h \W]$ [\e[0m]'

4)操作系统优化 --- yum下载源优化

yum provides locate====获取这个命令属于哪个软件大礼包

yum软件优势:简单快捷

01.不需要到官方网站下载软件包(到yum仓库直接下载即可)

02.可以解决软件的依赖关系

yum优化方法:

01.优化基础的yum源文件

02.优化扩展的yum源文件:

通过阿里镜像 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

yum repolist ---- 检查可用的yum源信息

两个小软件 sl cowsay --- 需要优化epel扩展源:

sl --- 小火车

cowsay -- animalsay oldboy ------ 动物说话

如何确认软件是否安装:

rpm -qa

which ssh

rpm -qf 查看文件

5)系统安全相关优化(将一些安全服务进行关闭)

a. 防火墙服务程序

centos6:

查看防火墙服务状态:/etc/init.d/iptables status

临时关闭防火墙:/etc/init.d/iptables stop

永久关闭防火墙:chkconfig iptable off

centos7:

查看防火墙服务状态:systemctl status firewalld

临时关闭防火墙:systemctl stop firewalld

永久关闭防火墙:systemctl disable firewalld

启动防火墙:systemctl start fillward

开机运行防火墙 :systemctl enble fillward

重启服务:systemctl restart 服务名称

补充:查看服务状态简便信息 ------- systemctl is-active firewalld

----- systemctl is-enable firewalld --- 是否开机运行

b.系统的selinux程序

selinux服务对root用户权限进行控制

很多企业中:selinux服务默认关闭

centos6==centos7

检查确认: getenforce

临时关闭:

            setenforce  0

usage: setenforce [ Enforcing | Permissive | 1 | 0 ]

永久关闭:

vi /etc/selinux/config

            enforcing - SELinux security policy is enforced.  -- 服务器处于正常开启状态

permissive - SELinux prints warnings instead of enforcing. --- selinux服务器被临时关闭

disabled - No SELinux policy is loaded. ----- selinux服务器彻底关闭

如果想让selinux配置生效,重启系统

6)字符编码优化

什么是字符编码:对系统的字符编码可以实现对非英文字符的支持

支持中文比较号的编码:

utf-8 比较通用 GBK 比较国际通用

系统中字符集编码设置方法:

centos6:

查看默认编码方法:echo $LANG

临时修改:

永久修改:vi /etc/sysconfig/il8n

centos7:

查看默认编码信息:echo $LANG

临时修改:LANG=编码格式

永久修改:

方法一:vi /etc/profile 中加上 export LANG = 。。。。。

方法二:vi /etc/locale.conf

补充:一条命令直接改文件里面

localectl set-locale LANG=zn.CN.UTF-8

7)远程连接缓慢优化

第一步:

vi /etc/ssh/sshd_config

:set nu

79 GSSAPIAuthentication yes

115 #UseDNS yes

把这两个的注释取消 yes改为no

第二步:

修改vi /etc/houst文件

cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.80.200 cz402.com

第三步:重启ssh远程服务

systemctl restart sshd

查看网络服务 ss -lntup

常见服务端口号:

22 ssh远程连接服务

21/tcp FTP 文件传输协议

22/tcp SSH 安全登录、文件传送(SCP)和端口重定向

23/tcp Telnet 不安全的文本传送

25/tcp SMTP Simple Mail Transfer Protocol (E-mail)

69/udp TFTP Trivial File Transfer Protocol

79/tcp finger Finger

80/tcp HTTP 超文本传送协议 (WWW)

88/tcp Kerberos Authenticating agent

110/tcp POP3 Post Office Protocol (E-mail)

113/tcp ident old identification server system

119/tcp NNTP used for usenet newsgroup

管道过滤器 : grep

ss -lntup | grep "22"

vim

1.取消高亮显示

2.快速移动或复制数据信息

:2,4move(copy)9 --将第几行到第几行的内容移动(复制)到指定位置

3.文件内容信息进行修改替换

%s#oldboy#oldgiry#g ---- 将文件中指定的信息全部做替换

% 全部做替换

s 替换

g 将整行符合要求的字符都做替换

#要替换的信息#修改成什么信息

替换修改文件的部分内容

:2,4s#oldboy#oldgiry#g -- 将2-4内容替换

:12,s#oldboy#oldgiry#g --将12行到结尾的信息进行替换

批量修改文件内容

1.进入批量编辑状态 将光标移动到开始位置 输入Ctrl +v

2.批量选中要编辑的行 方向建选择

3.进行编辑修改

shift +i --- 进行单行编辑

4.实现批量修改

按esc

vim常见错误说明

1.vim命令后面一定要接文件

2.vim只能编辑存在的目录中的文件

3.编辑文件突然非正常状态退出

将错误信息制造出来:编辑一个文件,在没有退出前,直接断开远程连接

查看文件命令总结:

1查看文件或者目录的属性信息:

ls 查看数据信息

ls -l 查看文件属性

ls -ld 查看目录属性信息

ls -la 查看目录中的所有数据信息,包含隐藏文件

企业工作中的一个问题:

多个运维人员维护服务器,将oldboy目录中 最新的数据文件需要继续编辑好

ls -lt /etc/ 按照时间排序 正向排序

ls -ltr /etc 逆向排序

2,查看文件内容信息方法

命令:cat /d.txt /a.txt 查看多个文件

cat -N 显示行号

less/more

less /etc/service --- 类似于看书可以一点点查看文件内容,向下逐行显示:回车 向下逐页显示:空格 向上逐行显示:方向键上 向上逐页显示:字母b 搜索信息:/搜索字符

3.直接编辑文件命令的方法

echo “”xxx >> /oldboy/a.txt

输出序列 1.显示连续的序列

echo {1..100}

2.显示不连续的序列

a. 不连续有规律的序列 显示1..10的奇数(偶数)信息

echo {01..10..2}

echo {02..10..2}

mkdir -p /oldboy/oldboy{01..20}

cat >> /oldboy/oldboy.txt <<oldboy

4.过滤筛选文件内容命令

三剑客命令:

老三:grep ----过滤筛选信息

老二:sed ------ 修改替换文件内容,擅长对文件中的行进行操作

老大:awk ------擅长统计分析文件内容,擅长对文件中的列进行操作

grep命令如何进行过滤

编辑一个测试文件

            [root@cz-01 ~]# cat >> /oldboy/test.txt <<EOF

oldboy01 oldgirl01 olddog01 oldboy02 oldgril02 olddog02 EOF [root@cz-01 ~]# cat /oldboy/test.txt oldboy01 oldgirl01 olddog01 oldboy02 oldgril02 olddog02

1.筛选出有oldboy的信息

grep "oldboy" /oldboy/test.txt

2.筛选有oldgirl的信息,但是将有oldboy的上一行信息显示

grep -B 1 "oldgirl" /oldboy/test.txt

3.筛选有oldgirl的信息,但是将有oldboy的下一行信息显示

grep -A 1 "oldgirl" /oldboy/test.txt

4..筛选有oldgirl的信息,但是将有oldboy的下一行和上一行信息显示

a .grep -A 1 -B 1 "oldgirl" /oldboy/test.txt

b. grep -C 1 "oldgirl" /oldboy/test.txt

5.统计oldgril信息在文件中显示了几次

grep -c "oldboy" /oldboy/test.txt

修改文件部分内容信息

1.sed命令 真正修改文件内容

sed 's#oldboy#python#g' /oldboy/test.txt

sed -i 's#oldboy#python#g' /oldboy/test.txt

2.tr命令 假装修改文件内容

echo 123|tr “123” “abc”

脚本的方式创建多个用户

for num in {01..20};do useradd oldgirl$num;done

三:系统文件属性说明

(1):文件属性概念

​ls -li /etc/

总用量 1096

第一个部分:文件属性 第二个部分:文件名称

34181869 d rwxr-xr-x. 3 root root 101 5月 16 2022 abrt

01 02 03 04 05 06 07 08

01.文件数据的inode信息: index node ==== 索引节点

作用:快速从磁盘中找到数据信息

02.文件的数据类型:文件 目录 链接文件 cdrom(设备文件)

ps:Linux系统中一切皆文件

作用:指明数据的文件类型

03.权限位信息:r -- red 读

w --- write 写

x --- execute执行

作用:控制不同的用户对文件有不同的权限

04.文件目录的硬链接数:类似于超市的多个门

作用:可以有多个路径查看数据信息

05.文件所属用户信息(属主):文件的创建者或者拥有者

06.文件所属组信息(属组):文件或数据的所属用户组

07.文件的大小信息

08.文件的时间信息

(2):文件属性详细说明 ---- 文件类型

1.文件类型概念

windows:区分文件的类型 扩展名

Linux系统中: 不用扩展名来区分文件类型

2.Linux系统区分文件类型方法:

a.颜色区分

b.利用属性信息区分 ls -l

c.利用特殊命令区分

file /oldboy/oldboy.txt

3.Linux系统中的常见文件类型

d === 目录

- ==== 普通文件

(1)纯文本文件 ----- 文本文件(可以直接编辑查看的普通文件)

(2)二进制文件 ------ 命令文件(不可以编辑)

(3)数据型文件 ------ 数据文件(压缩文件)

l ==== 链接文件 创建方法 --- ls -s /oldboy/oldboy.txt /oldboy/oldboy_link.txt

源文件 软链接文件

c/b ==== 块文件/字符文件(设备文件)

s --- socket文件(网络编程)

4.扩展命令说明

a.显示 文件信息类型命令:file

b. 显示命令的绝对路径信息:which

c.显示命令路径及相关的帮助手册文件路径:wehereis

d.快速定位文件的所在路径:locate 需要下载mlocate 需要建表updatedb

e.快速查找数据信息命令

find 命令语句

find 找寻的数据范围 - type(文件类型) d l - c/b -name “文件名称”

根据大小查找:find /oldboy -type f -size +1M

5.显示目录结构信息 --- tree

tree /oldboy 显示所有的信息

tree -L 2 / 查看目录结构层级信息

tree -d /oldboy 显示目录中所有结构信息

6.系统中如何对文件进行压缩

压缩的命令 tar

压缩命令的语法 :

tar zcvf /oldboy/oldboy.tar.gz 指定要压缩的文件

z-- zip c -- 创建压缩包文件 v--显示压缩的过程 f--- 指定压缩包文件路径信息

检查是否压缩成功:mv

xvf

查看解压过后是否一致:vimdiff 或者比较两个文件内容是否有区别

(3):文件属性详细说明 ---- 文件权限

1.文件数据权限有什么:

r read === 读权限 4

w write === 写权限 2

x execute === 执行权限 1

2.权限赋予到指定人

属主信息 文件所有者(监护人) 权限

属组信息 文件所有者(亲人) 权限

其他用户 隔壁老王 权限

(4):文件属性详细说明 ---- 用户信息

1.系统中用户信息有什么用

a.利用用户登录系统

b.利用用户管理数据

c.利用用户管理进程

2.系统如何识别不同用户

利用用户的数值编号进行识别:uidid root

uid=0(root) gid=0(root) 组=0(root) [root@cz-01 ~]# id cz402 uid=1001(cz402) gid=1001(cz402) 组=1001(cz402)

3.用户组的概念:

oldboy oldgiry -sa (system aimin)

boy -dev(DEvelopment)

alex old -dba(databaseadmin)

用户---用户组 (1对1的关系)

多个用户 ---- 用户组 (多对一的关系)

用户 ---- 多个用户组 (多对一的关系)

系统识别用户组也是根据编号来识别:gid

4.用户进行分类

a.超级管理员用户 皇帝 root

uid信息进行区分: 0

b.虚拟用户 傀儡 xxx

uid信息进行区分: 1-999

c .普通用户 平民 oldboy/。。。。

uid信息进行区分: 1000+

如何保护好皇帝

1.修改远程连接端口-52113 ----- 修改/etc/ssh/sshd——config

2,禁止root用户可以远程登录

5.文件属性详细说明 ---- inode

inode:索引节点

文件或数据在磁盘中保存的位置

block:索引节点指向的位置

文件或数据的具体内容

读取数据原理

1.找到指定数据

2.读取数据内容,先获取文件数据inode信息

3.根据inode信息在磁盘上找到对应的block

4.根据block信息获取文件真正内容

6.文件属性详细说明 ---- 时间信息

文件数据时间类型:

1.访问时间

2.修改时间 date-s

3.改变时间

查看时间:date

ntpdate ntp1.aliyun.com ==== 时间同步

(5):文件属性详细说明 ---- 硬链接数

硬链接:

概念说明:超市的多个门 在一个分区中,inode号码相同的文件互为硬链接

诞生过程:

ln 链接的源文件 硬链接的文件信息

ln /oldboy/oldboy.txt /oldboy/oldboy_hard_link.txt [root@cz-01 oldboy]# ll 总用量 8 -rw-r--r-- 2 root root 13 12月 17 16:42 oldboy_hard_link.txt -rw-r--r-- 2 root root 13 12月 17 16:42 oldboy.txt [root@cz-01 oldboy]#

利用find命令找到所有硬链接:find / -type f -inum 33592763

系统中的目录不能创建硬链接

软链接:

概念说明:文件的快捷方式

诞生过程:

ln -s

ln -s /oldboy/oldboy.txt /oldboy/oldboy_soft_link.txt [root@cz-01 oldboy]# ll 总用量 8 -rw-r--r-- 2 root root 13 12月 17 16:42 oldboy_hard_link.txt lrwxrwxrwx 1 root root 18 12月 17 16:43 oldboy_soft_link.txt -> /oldboy/oldboy.txt -rw-r--r-- 2 root root 13 12月 17 16:42 oldboy.txt

软硬链接的区别:

  1. 链接后的文件大小不一致

  2. 链接后的文件类型和权限不一致

  3. 链接后的文件和源文件 inode信息有出入 硬链接号码一致软链接号码不一样

  4. 源文件被删除之后硬链接文件依然有效,软链接文件失效

  5. 软硬链接创建过程不一致

如何确定数据真正被删除了

1.确保文件的硬链接数为0 i_link

2.确保文件没有被进程占用 i_count

四:系统正则符号部分

1.系统基础符号说明

(1)基础符号系列 :$ 美元符号 1.用于取出变量中的内容 2.用于取出指定列的信息(awk)3.表示用户命令提示符号 4.表示一行的结尾

!叹号符号 1.用于排除取反

| 竖线符号 管道符号 前一个命令执行结果交给后面命令处理

xargs 命令 | xargs 命令

xargs:将信息进行分组显示

(2)引号符号系列:'' 输出的信息,所见即所得

"" 和单引号功能类似,但对特殊信息会做解析

``($()) 将引号中的命令先执行,将执行结果交给引号外面的命令进行处理

没有引号 和双引号功能类似,但是可以直接识别通配符信息

(3)重定向符号系列:

> 标准输出重定向符号

2> 错误输出重定向符号

>> 标准输出追加重定向

2>> 错误输出追加重定向

< 标准输入重定向符号

<< 标准输入追加重定向符号

如何将正确信息和错误信息都输入到文件里面:echo oldboy > /oldboy/ok.txt 2>/oldboy/error.txt

echo oldboy &> /oldboy/info.log

(4)路径相关信息:

../ 上一级目录

./当前目录

~家目录

- 两个目录进行切换

(5)逻辑符号系列:

&& 与 前一个命令执行成功了才执行后一个

|| 或 前一个命令失败了才执行后一个

(6)系统通配符号:

利用通配符号匹配文件名称信息

* 模糊匹配

{} 生成序列信息

echo {1..10}

(7)正则符号

基础正则符号:base

  1. ^尖角符号:以什么开头的信息 ll /oldboy|grep ”^d“ 2. $美元符号:以什么结尾的信息 ll /oldboy|grep ”^d“ 3. .点符号: 匹配任意一个字符且只有一个字符 4. *星符号:匹配任意0或多个字符

    1. \转义符号:将有特殊意义的符号转义成普通信息进行识别,将没有特殊意义的信息转义为特殊有意义的符号例如\n 6. []括号符号:匹配多个字符信息

扩展正则符号:ere -----默认grep,sed不能直接识别,grep 提示自己 == egrep === grep -E sed提示自己=== sed -r

1.+号符号:匹配前一个字符出现一次或者多次

2.|竖线符号:并且符号用于匹配多个信息

3.()括号符号:作用1.指定信息进行整体匹配 2.进行后项引用前项 ---sed 命令替换功能

seq -w 10|sed -r 's#(.*)#useradd oldboy\1;echo 123456|passwd --stdin oldboy\1#g' useradd oldboy01;echo 123456|passwd --stdin oldboy01 useradd oldboy02;echo 123456|passwd --stdin oldboy02 useradd oldboy03;echo 123456|passwd --stdin oldboy03 useradd oldboy04;echo 123456|passwd --stdin oldboy04 useradd oldboy05;echo 123456|passwd --stdin oldboy05 useradd oldboy06;echo 123456|passwd --stdin oldboy06 useradd oldboy07;echo 123456|passwd --stdin oldboy07 useradd oldboy08;echo 123456|passwd --stdin oldboy08 useradd oldboy09;echo 123456|passwd --stdin oldboy09 useradd oldboy10;echo 123456|passwd --stdin oldboy10 [root@cz-01 ~]#

4.{}括号符号:可以指定字符连续匹配的次数 x{n,m}至少出现n次 至多出现m次

5.?问号符号:定义匹配前一个字符出现0次或者1次

五:系统三剑客命令部分

1)sed命令

=================== 一般处理文本文件(小文件),日志文件信息(grep awk分析),配置文件信息(sed)

-n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。

-e :直接在命令列模式上进行 sed 的动作编辑; -f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作; -r :sed 的动作支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法) -i :直接修改读取的文件内容,而不是输出到终端。

1.概述:字符流编辑工具 == 按照每行中的字符进行处理操作

2.sed命令作用: ​ 1.擅长对行进行操作处理

2.擅长将文件的内容信息进行修改调整/删除

编写脚本:修改文件信息时

sed -i "s*10.0.0.201#10.0.0.101#g" /etc/sysconfig/network-scripts/ifcfg-ens33

3.具体功能作用:

1.向文件中添加信息

2.向文件中删除信息

3.向文件中修改信息

4.向文件中查询信息

4.sed命令的语法信息

sed 参数 条件-处理 处理的文件信息

sed -n ‘/oldboy/p’ oldboy.txt

5.sed命令执行原理

6.sed命令实践操作 ​ a.sed命令查询信息方法

创建测试环境

根据文件内容的行号进行查询:

测试1:显示单行内容

sed -n '3p' person.txt

测试2.显示多行信息(连续)

sed -n ‘1,3p' person.txt

测试2.显示多行信息(不连续)

sed -n ‘1p;3p' person.txt

根据文件内容的信息进行查询:

测试1:根据内容信息,输出单行内容

sed -n '/oldboy/p' person.txt ​ 101,oldboy,CEO

测试2:根据内容信息,输出多行内容,将有oldboy到alex的信息都输出出来(连续)

sed -n '/oldboy/,/Alex/p' person.txt

测试3:根据内容信息,输出多行内容,将有oldboy到alex的信息都输出出来(不连续)

sed -n '/oldboy/p;/Alex/p' person.txt

b.sed命令添加信息方法

在文件的第一行添加信息:

100,oldgirl,UFO

sed -i ’1i100,oldgirl,UFO‘ person.txt

在文件的最后一行添加信息

sed '$a108,oldgirl,UFO' person.txt

107,oldbbb,ooo

p:输出信息

i:插入信息

a:附加信息

c.sed命令删除信息的方法

1.删除单行

sed ‘3d‘ person.txt

2.删除文件中第二行到第六行的信息

sed ’2,6d‘ person.txt

d.sed命令修改信息的方法

sed 's#原有内容#修改后的内容#g'

2)awk命令

擅长对列进行操作/进行数据信息的统计(数组)

awk基本使用(高级使用--shell)

1.awk概念介绍说明

作用特点:1.排除信息

2.查询信息

3.统计信息

4.替换信息

语法格式:

awk 参数 ’模式-动作’ 文件

awk实际操作过程:

准备测试环境

命令查询信息方法:awk 'NR==2' awk_test.txt

ps:在Linux系统中 oldboy=10 赋值变量信息

oldboy==2 真正oldboy等于数值2

awk '/Xiaoyu/' awk_test.txt

awk '/Zhang/{print $NF}' awk_test.txt |awk -F ":" '{print $3}'

awk -F '[ :]+' '/^Zhang/{print $1,$2,$5}' awk_test.txt

显示以41开头的ID号码的人的全名:

awk '$3~/^41/{print $1,$2,$3}' awk_test.txt

显示所有ID号码最后一位数字时1或5的人全名:

方法一:awk '$3~/1$|5$/{print $1,$2}' awk_test.txt |column -t

方法二:awk '$3~/[15]$/{print $1,$2}' awk_test.txt

显示xiaoyu的捐款,每个时都以$开头

ps:gsub(/需要替换的信息/,”替换成什么信息“,将哪列信息进行修改)

awk '$2~/Xiaoyu/{gsub(/:/,"$",$NF);print $NF}' awk_test.txt

文件中空行进行排除/文件中注释信息进行排除:

sed -n ’^#|^$/!p'

awk '!/^#|^$/' awk_test.txt

awk '$0!~/^#|^$/' awk_test.txt

awk总结:

$1 $2 $3 :取第几列

$NF:取最后一列

$(NF-n):取倒数几列

$0:取所有列的信息

六:计算机网络协议

1)网络层次模型

1.OSI七层模型:

应用层——标准规范,应用层程序 范

表示层——数据转换加密,压缩

会话层——建立,管理和终止会话

传输层——保证数据传输的可靠性

网络层——路由协议,可以通过路由找到目标网络

数据链路层——可以实现通过交换设备找到真正的目标主机(交换数据的能力)

物理层——指定一些网络的物理设备的标准 网卡,网线,光纤。

2.数据的封装和解封装过程

3.TCP/IP模型(四层):

在OSI七层模型基础上做了简化:

应用层:

表示层: 应用层

会话层:

传输层: 主机到主机层

网络层: 因特网层

数据链路层:

物理层: 网络接入层

4.三次握手

1.主机A向主机B发送TCP的报文,报文中控制字段syn置为1,请求建立连接

2.主机B向主机A发送TCP响应报文,报文中控制字段syn置为1,ack置为1

3.主机A向主机B发送TCP报文,控制字段ack置为1,确认接收到了信息

5.四次挥手:

运维基础命令和三剑客相关推荐

  1. Linux运维基础命令笔试题

    题目来源 老男孩BLOG:http://oldboy.blog.51cto.com/2561410/1752116 1.创建目录/data/oldboy ,并且在该目录下创建文件oldboy.txt, ...

  2. linux系统中pwd命令的作用,Linux运维pwd命令有什么用途?linux系统

    Pwd命令用于显示当前所在的位置,是Linux运维工作人员需要掌握的Linux文件和目录操作命令之一.对于Linux运维工作,Linux命令是必不可少的.随着技术的发展,市场对于Linux运维人才的需 ...

  3. 运维基础(13)日志切割工具 Logrotate

    Logrotate 程序是一个日志文件管理工具,用于分割日志文件,压缩转存.删除旧的日志文件,并创建新的日志文件,下面就对 logrotate 日志轮转的记录: Linux 系统默认安装 logrot ...

  4. 运维基础(12)服务器12种基本故障+排查方法

    定义举例 从上电(或复位)到自检完成这一段过程中电脑所发生的故障. 可能的故障现象 1. 主机不能加电(如:电源风扇不转或转一下即停等).有时不能加电.开机掉闸.机箱金属部分带电等; 2. 开机无显, ...

  5. 运维基础(10)linux被删数据恢复方法

    https://sourceforge.net/projects/extundelete/extundelete --help 其中,参数(options)有: --version, -[vV],显示 ...

  6. 运维基础(8)shell脚本

    欢迎关注微信公众号[厦门微思网络].www.xmws.cn专业IT认证培训19周年 主要课程:思科.华为.红帽.ORACLE.VMware.CISP.PMP等认证培训及考证 shell 中各个命令的区 ...

  7. 运维基础(5)Ansible

    Ansible 是近年来越来越火的一款开源运维自动化工具,通过Ansible 可以实现运维自动化,提高运维工程师的工作 效率,减少人为失误.它基于Python 开发,集合了众多运维工具( puppet ...

  8. 运维基础(4)流量监控工具篇

    往期回顾: 运维基础(1)Nginx 运维基础(2)实用工具篇 运维基础(3)备份篇 最近有一些同学,让讲师帮忙协助检测下一台服务器的网络流量,既此,我要来了下网络流量监测相关的工具,以供使用,欢迎转 ...

  9. dataguard日志传输模式解析_网络运维基础 日志审计

    点击上面蓝字关注我们 综合日志审计平台 综合日志审计平台通过集中采集信息系统中的系统安全事件.用户访问记录.系统运行日志.系统运行状态等各类信息,经过规范化.过滤.归并和告警分析等处理后,以统一格式的 ...

最新文章

  1. c51汇编语言处理多位数,汇编语言用循环输出多位数,结果溢出了,怎么解决?...
  2. 锐捷交换机配置snmp版本_【交换机】交换机如何配置SNMP(网络管理协议)
  3. 【Linux系统编程】可重入和不可重入函数
  4. python拷贝是什么知识点_python闭包、深浅拷贝、垃圾回收、with语句知识点汇总...
  5. 光纤收发器有什么用?光纤收发器的作用是什么?
  6. 【BZOJ5213】[ZJOI2018]迷宫(神仙题)
  7. 前端招聘与前端卖身的困境
  8. Java类class getClasses()方法及示例
  9. jdbc数据库配置mysql数据库_JDBC连接MySQL数据库(一)——数据库的基本连接
  10. Python基础---OS模块 (二)
  11. 《Effective C#》Item 20:区分接口实现与虚函数重载
  12. 5、maplotlib中的轴刻度和轴线
  13. 11g oracle 客户端驱动_oracle 11g 数据库驱动包
  14. AutoCAD Plant 3d管道设计基础到中高级进阶视频教程
  15. 中央财经大学c语言试题答案,中央财经大学C语言题
  16. 美食杰(个人主页编辑资料)
  17. 软件测试行业的现状和前景
  18. 客户留存的4个产品策略
  19. 电容电阻电感在电路中的作用
  20. linux网卡驱动离线安装_Linux网卡驱动的安装方式

热门文章

  1. 环境监测系统全天候实时监测
  2. 商业MIS系统中成本核算方式的选择
  3. web课程设计:HTML非遗文化网页设计题材【京剧文化】HTML+CSS+JavaScript
  4. C语言编程 可以不会英语 但必须要懂以下英语单词
  5. 日本大数据应用环境和发展状况
  6. 金蝶KIS云的采购模块操作手册
  7. 诺基亚6微信不能连接服务器,诺基亚6微信打开链接输入数字就卡死
  8. epoll的底层实现原理
  9. 【金鸡乘梦,新岁扬帆】云和恩墨豪华大礼贺新春
  10. -XX:CMSInitiatingOccupancyFraction=92 Java8