一、软件包安装
1.红帽系安装
1.1 yum安装方法
/etc/yum.repos.d/ yum源仓库地址
yum的特点:自动解决安装需要的依赖,没有网无法安装
1.安装:
yum -y install wget
2.卸载:
yum -y remove wget
3.清理缓存:
yum clean all
4.查看软件仓库中可用的软件包:
yum list
yum list | grep nginx
5.更新yum仓库:
yum update
6.重新安装:
yum -y reinstall # 重新安装 类似windows的覆盖安装。遇到命令无法正常使用又无法卸载情况
7.搜索命令属于那个包:
yum search rz
yum provides ifconfig
总结区别:
yum search 是基于关键词搜索软件包的名称或描述。
yum provides 是基于文件或命令查找提供它们的软件包。
使用场景:
当你知道你想要安装的软件的名称或描述的一部分时,使用 yum search。
当你知道你需要的是一个特定的文件或命令,但不知道哪个软件包提供它时,使用 yum provides。
8.yum下载rpm包不安装(若果缺依赖,依赖也会一起下载)
yum -y install --downloadonly --downloaddir=./ wget
1.2 rpm安装方法
rpm安装的特点:
需要 .rpm 结尾的包安装
不需要联网,依赖需要自己解决,自己安装依赖
1.安装
rpm -ivh xx.rpm
-i # install 安装
-v # verbose 显示过程
-h # 显示进度
2.卸载
rpm -e xx.rpm # 卸载的时候不能加包的后缀 .rpm
3.查看系统安装了那些软件
rpm -qa # 查看系统已经安装了哪些软件 rpm -qa
rpm -qa wget # 查看wget是否安装
rpm -qa | grep wget # 查看wget是否安装
4.查看wget安装了哪些
[root@oldboyedu ~]# rpm -ql wget
/etc/wgetrc
/usr/bin/wget
/usr/share/doc/wget
/usr/share/doc/wget/AUTHORS
5.查看安装软件的配置文件
[root@oldboyedu ~]# rpm -qc wget
/etc/wgetrc
1.3 增加epel额外扩展仓库
1.备份默认的仓库
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2.下载新的仓库到配置目录下 #opsx阿里云
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all 清理缓存
2.ubuntu系安装
2.1 apt安装方法
1.安装
apt -y install wget
2.卸载
apt -y remove wget
3.yum下载rpm包不安装(若果缺依赖,依赖也会一起下载)
apt-get -y install --download-only wget
/var/cache/apt/archives/ #软件包被下载到这个目录
2.2 dpkg安装方法
1.安装
dpkg -i xx.deb # ubt安装类似centos的rpm包
卸载:dpkg -r
2.查看
dpkg -l wget # 查看wget是否安装
dpkg -l | grep wget # 查看wget是否安装
dpkg -L | grep wget # 查看安装到哪里了,查看配置文件等
3.下载安装包和依赖安装包
apt-get -y --print-uris install php7.4 | grep ^\' | awk -F "'" '{print $2}' | xargs wget
apt-get -y --print-uris install php7.4 ##模拟下载安装php7.4
2.3 ubt更换apt源阿里云仓库 ubuntu22.04
/etc/apt/sources.list ubuntu仓库源地址
第一步:将默认的仓库修改为国内阿里云地址
root@oldboy:~# mv /etc/apt/sources.list /opt/
root@oldboy:~# vim /etc/apt/sources.list # 粘贴一下内容
deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal main restricted universemultiverse
deb https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-security main restricteduniverse multiverse
deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
# deb https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
第二步: 执行更新操作
root@oldboy:~# apt update
二、文件类型
f # 表示普通文件
d # 表示目录
l # 表示链接文件
c # 表示字节设备
b # 表示块设备 /dev/sda 磁盘 光驱
三、字节设备
1.黑洞文件
/dev/null # 作用 可以将不要的命令的结果定向到此文件 空 类似黑洞 只吃不拉
案例:
ping -c1 -W1 www.sinssssa.com &>/dev/null #ping1次,一次ping1秒,不管对错都扔到黑洞
2.白洞文件
/dev/zero #无限的字节流,用于生成固定大小的零填充数据 可以用于系统管理和测试任务
可以用来压力测试,生成指定大小文件等
3.随机数源
/dev/urandom # 是一个方便的随机数源 一直吐数据
4. dd命令:
if # input file 输入文件 /dev/zero输入内容
of # ouput file 输出到哪个文件 1.txt 中
bs # 每次读取的大小 bs=1M 每次在/dev/zero中读取1M的数据
count # 总共读多少次
案例:
dd if=/dev/zero of=./1.txt bs=1M count=10 #一次写入1M,写10次
dd if=/dev/zero of=/dev/sdx bs=1M count=1024 ##磁盘压力测试
四、find命令
1.find指定
0.按照文件大小查找
find ./ -size 10M # 查找出等于10M的文件
find ./ -size +10M # 查找出大于10M的文件
find ./ -size -10M # 查找出小于10M的文件
1.按照文件类型查找
find /date -type f ##指定文件类型-type
find /date -type d ##指定文件类型-type
2.按照文件名字查找
find /date -name "1.txt" ##指定名称-name
3.按照文件名字查找,不区分大小写
find /date -iname "1.TXT" ##不区分大小写指定名称-iname
4.按照时间查找文件
find ./ -mtime +7 # 7天前修改过的文件
find ./ -mtime -7 # 7天内修改过的文件
find ./ -mtime 0 # 24小时内被修改过的文件
atime: 访问时间
mtime: 文件修改时间
ctime: 文件属性修改时间
5.指定查找目录最大深度
find /date -maxdepth 1 ##目录最大深度,格式需要在最前面
find ./ -maxdepth 1 -name "*.txt"
6.对搜索的结果执行命令
find /date -exec f ##对搜索结果执行命令
7.根据inode号查询文件
find /date -inum 23565
2.find的并且,或者
- -a 并且and 需要同时成立,默认就带可不加
- -o 或者or 需要注意格式 find ./ -name “1.txt” -o -name “2.txt
find ./ -type f -o -type d
find ./ -name "1.txt" -o -name "2.txt"
find ./ -maxdepth 1 -name "*.txt" -o -name "*.log"
find ./ -size 10M -o -size +10M
五、echo $?
- echo $? 返回上一条命令的执行结果0或非0
- 上一条命令执行成功打印输出 0 不成功输出 非0
六、xargs命令
- 将命令的结果甩到后面
例如:
find /etc/ -name “passwd” | xargs cat
find /etc/ -name "passwd" | xargs cat #相当于 cat /etc/passwd
find查询到passwd文件,然后通过xargs命令把结果/etc/passwd甩到后面
[root@oldboyedu ~]# find /etc/ -name "passwd"
/etc/passwd
-----------------下方为结果
[root@oldboyedu ~]# find /etc/ -name "passwd" | xargs cat
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
七、ntpupdate同步时间命令
date -s 20081010 ##更新时间date -s
yum -y install ntpdate ##下载安装ntpdate命令
ntpdate ntp2.aliyun.com ##同步阿里云时间服务器
笔试题: 查找/data目录下所有的普通文件修改时间大于30天前的然后删除
find / -mtime +30 | xargs rm