ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021-07-10

2021-07-10 14:31:49  阅读:205  来源: 互联网

标签:10 grep 07 etc 命令 sed awk 2021 ens32


bash shell执行命令的窗口:

(bash 命令 -->内核–>驱动硬件)

bash语法结构 :

bash

	执行方式:

​ 1,单条命令

​ 2,shell脚本

bash 特性:

​ 快捷键; ctrl +c ,ctrl + <> ctrl +u 删除光标已以前的内容 ctrl+k 删除光标以后的内容

​ 命令补全: TAB

​ 选项补全 yum install -y bash-completion

​ 路径补全;判断路径是否输入错误

​ 历史记录 history history -w将已有的history中的命令保存到磁盘中

​ 别名;alias

​ 希望执行 rm 时 提示rm 指令找不

​ 拒绝使用某个命令 alias rm='echo"rm command not found

​ 缩短命令

文件管理:

​ 路径:

​ 目录结构:

window :

​ 多根 多个顶点

linux:

​ 单根 所有的东西都在 /

/root /bin /sbin /etc/ /mnt /medin /user

/boot /proc /dev /srv /tmp /var

路径:有目录结构

​ 文件名称 + 目录 =的=路径

访问方式:

相对路径 :相对于当前路径

.当前目录

… 当前目录的上一级目录

绝对路径 :一切以根开始

cd /usr/local

cd /user;cd local/

include /etc/nginx/test.conf -->dopt

​ 创建:

​ 文件创建

​ 目录创建 -p, 递归创建 -v显示过程

​ 删除:

rm 删除文件

-f强制删除

-r 递归删除目录,先删除目录中的文件,然后再干掉目录

​ 移动:

​ MV 源文件 目标

​ 复制

​ cp 原文件 目标位置 +文件名称

​ -r 递创建

​ -p包含文件属性

​ cp /etc/{hosts,host_back} 将hosts 复制到host_back 查看

​ 编辑

​ 过滤(筛选): 文件 数据 不规则

​ 1排序

​ 2去重

​ 2过滤 grep “过滤的关键字”

​ grep "root " /etc/passwd

​ grep -v “root” /etc/passwd 取反过滤

​ -E 支持扩展表达式 支持 多条件匹配

​ grep -E “xiaohong|xiaolv” /test/grep.log

[root@localhost ~]# grep -E “xiaohong|xiaolv” /test/grep.log
xiaohong
xiaolv

​ -i 忽略大小写

​ grep -v “^#” /etc/vsftpd/vsftpd.conf

​ grep -Ev “^#” /etc/vsftpd/vsftpd.conf

​ sort -k 2 -n -r grep.log | head -3

-k 指定列 默认是空格为分隔符

-n 以number方式排序

-r 反转(从大到小)

去重

-c :count 统计出现的次数

sort -k 2 -n -r grep.log | uniq -c
2 xiaohong 100
1 xiaohei 100
1 xiaolan 90
1 xiaolv 80
1 xiaohong 78

有个日志文件,统计 个=每个IP出现的次数 显示出前三
在这里插入图片描述
统计:
统计文件有多少行
在这里插入图片描述
在这里插入图片描述
匹配目标关键字的行
在这里插入图片描述在这里插入图片描述
替换
常用格式 sed ‘s#old#new#g’
在这里插入图片描述
sed ‘s#(以什么开始)(中间)(以上么结束)#\n#gp’
ifconfig ens32 | grep 'inet ’ | sed -r ‘s#(^.et)(.)(net.*$)#\2#g’
在这里插入图片描述

ifconfig ens32 | awk ‘/inet /’ | sed -r ‘s#(^.et)(.)(net.*$)#\2#’
在这里插入图片描述sed -n ‘2,5p’ filename 显示指定行的内容
在这里插入图片描述

扩展:打印IP
ifconfig ens32 | grep 'inet ’ | sed -r ‘s#(^.et)(.)(net.*$)#\2#g’

ifconfig ens32 | awk ‘/inet /’ | sed -r ‘s#(^.et)(.)(net.*$)#\2#’

ifconfig ens32 | grep 'inet ’ | awk ‘{print $2}’

ifconfig ens32 | grep 'inet ’ | sed -r ‘s/(^.inet)(.)(netmask.*$)/\2/’

ifconfig ens32|awk ‘NR==2 {print $2}’

grep ‘IPADDR’ /etc/sysconfig/network-scripts/ifcfg-ens32|awk -F ‘=’ ‘{print $2}’

grep ‘IPADDR’ /etc/sysconfig/network-scripts/ifcfg-ens32|awk -F ‘=’ ‘{print $NF}’

文件传输与下载
yum install -y lrzsz-0.12.20-36.el7.x86_64
sz linux–>windows

sz /PATH 将文件下载到其他的平台

rz windows–>linux

rz 不支持断点续传 ,只支持上传文件不能传文件夹 (传文件夹需要打包成文件)

不支持上传超过4GB的文件

查找命令:
which command
whereis command
type -a command
都是查找命令的绝对位置

LINUX 命令的执行流程
1系统会判断你输入的命令是否绝对路径,是直接执行

  1. 如果是相对路径,系统会判断命令是否存在别名,如果存在,执行别名

  2. 如果命令不存在别名,系统会判断输入的命令是否内置命令,如果是,直接执行

  3. 如果不是内置命令,系统会查询内存的hash缓存表,如果命令存在缓存,则按照缓存执行

  4. 如果hash缓存表中没有命令的缓存,系统会从环境变量PATH中的命令路径查询命令的路径进行执行

  5. 如果PATH变量没有命令的路径,就会报错 command not found
    在这里插入图片描述

hostnamectl 查看系统信息:
查看系统名称
hostnamectl | grep ‘CPE’ | awk -F ‘:’ ‘{print ( N F − 1 ) " : " (NF-1)":" (NF−1)":"NF}’

在这里插入图片描述
查看kernel:
在这里插入图片描述

sed awk grep 强化练习
创建一个文件test
ert
fff
[abcfd]
123
324
444
[rty]
fgfgf
需求:怎么能截取 [abcfd] ~ [rty] 这几行的内容出来
在这里插入图片描述
上面代码确实能够解决问题,如果我们设想一下test文件的行为1000行或者更多10000行我们又该怎么去解决呢?
在这里插入图片描述

标签:10,grep,07,etc,命令,sed,awk,2021,ens32
来源: https://blog.csdn.net/Agan_Lu_Ming/article/details/118631752

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有