Linux云计算训练营笔记day13[CentOS 7 find、vim、vimdiff、ping、wget、curl、RPM、YUM]]

Linux云计算训练营笔记day13[CentOS 7 find、vim、vimdiff、ping、wget、curl、RPM、YUM]]

目录

  • [Linux云计算训练营笔记day13[CentOS 7 find、vim、vimdiff、ping、wget、curl、RPM、YUM]]](#Linux云计算训练营笔记day13[CentOS 7 find、vim、vimdiff、ping、wget、curl、RPM、YUM]])
  • 1.find练习
  • 2.vim高级使用
    • [2.1 命令模式:](#2.1 命令模式:)
    • [2.2 插入模式:](#2.2 插入模式:)
    • [2.3 末行模式:](#2.3 末行模式:)
  • [3. vimdiff](#3. vimdiff)
  • [4. ping](#4. ping)
  • 5.wget
  • [6. curl 下载文件](#6. curl 下载文件)
  • 7.RHCSA红帽题目:
  • 8.RPM
    • [8.1 准备RPM转件包](#8.1 准备RPM转件包)
      • [8.1.1 挂载光驱设备](#8.1.1 挂载光驱设备)
    • [8.2 查询软件包信息](#8.2 查询软件包信息)
    • [8.3 安装卸载软件包](#8.3 安装卸载软件包)
      • [8.3.1 安装](#8.3.1 安装)
      • [8.3.2 卸载](#8.3.2 卸载)
      • [8.3.3 问题:查询软件包信息(有警告输出)怎么解决?利用导入红帽签名信息](#8.3.3 问题:查询软件包信息(有警告输出)怎么解决?利用导入红帽签名信息)
  • 9.YUM
    • [9.1 本地yum](#9.1 本地yum)
    • [9.2 查询软件信息](#9.2 查询软件信息)

1.find练习

1.find / -user student -type f -exec cp {} /root/findfiles ;

2.find /boot -size +10M -type f -exec cp {} /opt ;

3.find /boot -name "vm*" -type f -exec cp {} /opt ;

4.find /boot -type l

5.find /etc -name "*tab" -type f

2.vim高级使用

vim高级使用

cp /etc/passwd user

vim user

2.1 命令模式:

Home 跳转到行首

End 跳转到行尾

PgUp 向上翻页

PgDn 向下翻页

G 跳转到文件的最后一行

gg 跳转到文件的第一行

yy 复制1行

p粘贴光标之后 P粘贴光标之前

2yy 复制2行

dd 删除1行

2dd 删除2行

d^ 从光标处之前删除至行首

d$ 从光标处删除到行尾

x 删除光标处的单个字符

文本查找

/zhangsan 向后查找字符串 zhangsan

n 跳到后一个结果

N 调到前一个结果

撤销

u 撤销最近的一次操作

U 撤销对当前的所有修改

ctrl+r 取消前一次的撤销操作

保存并退出

ZZ

2.2 插入模式:

自己写内容

2.3 末行模式:

touch a.txt

vim a.txt

:r /etc/passwd 读取其他文件

:w /root/gongli 另存为其他文件

:wq 和 :x 保存并退出

:q! 强制退出(不保存)

:w 保存当前文件

字符串替换

:\s/old/new 替换当前行第一个 old

:\s/old/new/g 替换当前行所有的old

:1,10s/old/new/g 替换1-10行所有的old

:%s/old/new/g 替换文件内所有的old

:set nu 显示行号

:set nonu 关闭行号

:set ai 启用缩进

:set noai 关闭缩进

永久配置vim的行号

bash 复制代码
vim /root/.vimrc

set nu

3. vimdiff

vimdiff 文件对比或者修改多个文件

echo hahaxixi > /opt/haha.txt

echo hahaabab > /opt/abab.txt

vimdiff /opt/haha.txt /opt/abab.txt

命令模式下 ctrl + w 同时按下,然后 左右键 移动光标

末行模式下 wqa 保存全部文件并退出

4. ping

网络请求和下载

ping 检查指定的网络服务器是否可连通状态

ping www.baidu.com

ctrl + c 结束

ping -c 3 www.baidu.com

选项 -c 检查的次数

5.wget

wget 下载网络文件

wget url

bash 复制代码
wget https://dw.oray.com/sunlogin/linux/sunloginclientshell-10.1.1.28779.x86_64.rpm

wget -b url

选项 -b 后台下载,会把日志写入当前工作目录的wget-log文件

bash 复制代码
wget -b https://dw.oray.com/sunlogin/linux/sunloginclientshell-10.1.1.28779.x86_64.rpm
bash 复制代码
cat wget-log

6. curl 下载文件

curl 可以发送http请求,也可以用于下载文件

curl www.baidu.com 给baidu发请求,但是不会解析返回来的数据

curl -O url

-O 下载文件并使用远程文件名保存。

bash 复制代码
curl -O https://dl.todesk.com/linux/todesk-v4.7.2.0-c7-x86_64.rpm

浏览器的作用

1)代替用户发请求 www.baidu.com

2)解析服务器返回的数据

7.RHCSA红帽题目:

1.查找属于jacques 用户所属的文件,并拷贝到/root/findfiles 目录

bash 复制代码
  useradd jacques 
  mkdir  /root/findfiles
  find /  -user  jacques -type f -exec cp {} /root/findfiles \;

2.创建一个名为/root/backup.tar.gz 的 tar 包,采用 gzip 打包压缩方式,用来压缩/usr/local目录。

bash 复制代码
  tar -czf  /root/backup.tar.gz  /usr/local

3.查找文件/usr/share/xml/iso-codes/iso_639_3.xml 中包含字符串 ng 的所有行并将所有这些行的内容放到文件/root/list 中,/root/list 不得包含空行

bash 复制代码
  grep  ng  /usr/share/xml/iso-codes/iso_639_3.xml > /root/list

8.RPM

RPM软件包简介

软件名-版本信息.操作系统.硬件架构.rpm

firefox-91.9.0-1.el8_5.x86_64.rpm

软件包:firefox-91.9.0-1.el8_5.x86_64.rpm

软件名:firefox

RPM包的一般安装位置(分散)

普通执行程序:/usr/bin/ 、/bin/

服务器程序、管理工具:/usr/sbin/ 、/sbin/

配置文件 :/etc/、/etc/软件名/

日志文件 :/var/log/、/var/log/软件名/

程序文档、man帮助手册页 :/usr/share/doc/ 、/usr/share/man/

rpm -qa 当前系统中所有已安装的软件包
rpm -qa | wc -l 统计已安装的软件包个数 1348

rpm -q firefox 查看firefox是否安装

(firefox-68.10.0-1.el7.centos.x86_64)
rpm -q httpd 查看httpd是否安装

(未安装软件包 httpd )
rpm -qa | grep firefox

(firefox-68.10.0-1.el7.centos.x86_64)

rpm -qi firefox #查询软件信息
rpm -ql firefox #查询软件安装了哪些内容(安装清单)

rpm -qf [文件路径]... 查询某个目录/文件是哪个RPM包带来的(即使目标文件被删除,也可以查询)

bash 复制代码
which  vim  

查询命令对应的程序文件 /usr/bin/vim

bash 复制代码
rpm  -qf   /usr/bin/vim 

查询这个目录是由哪个rpm包带来的 vim-enhanced-8.0.1763-16.el8_5.13.x86_64

which ifconfig =>/usr/sbin/ifconfig
rpm -qf /usr/sbin/ifconfig =>net-tools-2.0-0.25.20131004git.el7.x86_64

8.1 准备RPM转件包

8.1.1 挂载光驱设备

挂载光驱设备,命令行显示系统光盘内容~~

bash 复制代码
mkdir /gongli
mount /dev/cdrom  /gongli
ls    /gongli
bash 复制代码
ls /gongli/Packages | grep vsftpd

vsftpd-3.0.2-28.el7.x86_64.rpm

查询软件包的安装清单

8.2 查询软件包信息

bash 复制代码
rpm -qpl /gongli/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm

在安装vsftpd包之前,先了解软件包信息

bash 复制代码
rpm -qpi /gongli/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm

8.3 安装卸载软件包

8.3.1 安装

安装软件包:

rpm -i 软件包的名字

辅助选项:

-v 显示细节信息

-h 以#显示安装进度

rpm -q vsftpd 未安装
rpm -ivh /gongli/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm 安装
rpm -q vsftpd 已安装

8.3.2 卸载


卸载软件:
rpm -evh vsftpd 卸载
rpm -q vsftpd 未安装

8.3.3 问题:查询软件包信息(有警告输出)怎么解决?利用导入红帽签名信息

rpm -qpi /gongli/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm 有警告信息

解决办法

rpm --import /gongli/RPM-GPG-KEY-CentOS-7 导入红帽签名信息
rpm -qpi /gongli/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm 没有警告信息

9.YUM

安装软件包:

bash 复制代码
ls /gongli/Packages/ | grep httpd
bash 复制代码
rpm -ivh /gongli/Packages/httpd-2.4.6-95.el7.centos.x86_64.rpm

报错: 依赖检测失败

解决依赖关系: yum

yum的作用: 自动解决依赖关系安装软件

9.1 本地yum

自己是客户端,自己是服务端(在一台电脑上)

服务端:

  1. 众多的软件包 2)仓库数据文件 repodata
bash 复制代码
mkdir  /gongli
mount /dev/cdrom  /gongli
ls /gongli

客户端: 指定服务端的位置

仓库配置文件: /etc/yum.repos.d/*.repo

错误的文件会影响正确的文件

1)rm -rf /etc/yum.repos.d/*.repo

2)mv /etc/yum.repos.d/*.repo /opt

书写仓库配置文件

bash 复制代码
  vim  /etc/yum.repos.d/gongli.repo
复制代码
[源名称]: 自定义名称,唯一性
name:  软件的描述信息  
baseurl: 指定yum服务端的地址
enabled: 是否启用此仓库  0不启用 1启用
gpgcheck: 是否验证rpm软件包  0不验证  1验证
gpgkey: 验证rpm软件包的密钥文件路径
bash 复制代码
[gongli]
name=gongli
baseurl=file:///gongli
enabled=1
gpgcheck=0  

yum repoinfo 列出仓库信息

安装软件: yum install httpd =>按y确认
yum install -y vsftpd =>直接装包
yum install -y mariadb-server

排错思路:

  1. 没有挂载光驱设备
  2. 配置文件路径 /etc/yum.repos.d/ 写错
  3. 错误的文件会影响正确的文件

卸载软件
yum remove httpd =>按y确认
yum remove -y httpd =>直接卸包
rpm -q httpd 查看是否安装

9.2 查询软件信息

yum search httpd 查询httpd软件包,包含就匹配
yum list httpd 查询仓库是否有httpd软件(精确匹配)
yum info httpd 查看软件httpd的描述
yum provides /etc/passwd 仓库中哪个软件包产生的该文件
yum provides ifconfig 仓库中哪个软件包产生的命令

http://rpmfind.net/ 软件包在线下载

协议

file://

http://

相关推荐
安顾里11 分钟前
什么是endpoints?
运维·容器·kubernetes
子非衣24 分钟前
Ubuntu部署私有Gitlab
linux·ubuntu·gitlab
风屿.29 分钟前
IDEA推送到gitlab,jenkins识别,然后自动发布到需要的主机
运维·gitlab·jenkins
云祺vinchin37 分钟前
云祺容灾备份系统公有云备份与恢复实操-华为云
运维·服务器
XMYX-01 小时前
SkyWalking 报错:sw_profile_task 索引缺失问题分析与解决
运维·jenkins·skywalking
code monkey.1 小时前
【寻找Linux的奥秘】第七章:虚拟地址空间
linux·操作系统·c/c++
不愧是你呀1 小时前
Linux中I/O复用机制epoll
linux·服务器·网络
Vic101011 小时前
创建索引:GaussDB(PostgreSQL)开发笔记
笔记·postgresql·gaussdb
zyq~2 小时前
【课堂笔记】核方法和Mercer定理
笔记·机器学习·核方法·mercer定理
1977835462 小时前
Linux系统安全
linux