归档与压缩
归档的含义
————将零散的文件整理成一个文件
————文件的大小不变
压缩的 含义
————按算法减小文件所占空间大小
————恢复时按对应算法逆向解压
常见的压缩格式:
*.gz -->gzip;gunzip
*.bz2 --> bzip2;bunzip2
*.xz --> xz;unxz
常用选项
- –delete : 从tar包中删除某个文件
- -r, --append : 将文件追加到tar归档文件中
- -t, --list : 列出tar归档文件中包含的文件或目录
- -u, --update : 将已更新的文件追加到tar归档文件中
- -x, --extract, --get : 释放tar归档文件中文件及目录
- -C, --directory=DIR : 执行归档动作前变更工作目录到 目标DIR
- -f, --file=ARCHIVE : 指定 (将要创建或已存在的) 归档文件名
- -j, --bip2 : 对归档文件使用 bzip2 压缩
- -J, --xz : 对归档文件使用 xz 压缩
- -p, --preserve-permissions : 保留原文件的访问权限
- -v, --verbose : 显示命令整个执行过程
- -z, gzip : 对归档文件使用 gzip 压缩
tar打包
格式:tar 选项 /路径/压缩包名字 /源数据
[root@localhost /]# tar -zcf /root/cbd.tar.gz /etc/passwd /home
[root@localhost /]# ls /root
[root@localhost /]# tar -jcf /root/haha.tar.bz2 /etc/passwd /home
[root@localhost /]# ls /root
[root@localhost /]# tar -Jcf /root/cctv.tar.xz /etc/passwd /home
[root@localhost /]# ls /root
tar解压缩
格式: tar 选项 /路径/压缩包名字 选项 /压缩的位置
-x:释放归档
-f:指定归档文件名称,必须在所有选项的最后
-C(大写):指定路径
[root@localhost /]# tar -tf /root/haha.tar.bz2 #查看tar包内容
[root@localhost /]# mkdir /nsd11
[root@localhost /]# tar -xf /root/haha.tar.bz2 -C /nsd11
[root@localhost /]# ls /nsd11
[root@localhost /]# ls /nsd11/etc
[root@localhost /]# ls /nsd11/home
[root@localhost /]# tar -tf /root/cbd.tar.gz #查看tar包内容
[root@localhost /]# mkdir /nsd12
[root@localhost /]# tar -xf /root/cbd.tar.gz -C /nsd12
[root@localhost /]# ls /nsd12
[root@localhost /]# ls /nsd12/etc
重定向(重新定向命令的输出)
将前面命令的输出,作为内容,写入到后面的文件
>:覆盖重定向
>>:追加重定向
[root@localhost ~]# head -5 /etc/passwd > /opt/p.txt
[root@localhost ~]# cat /opt/p.txt
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
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。此外,也可以直接在文件中写入要写的内容。
[root@localhost ~]# echo 123 > /opt/p.txt
[root@localhost ~]# cat /opt/p.txt
123
重定向高级使用
[root@localhost ~]# > /opt/p.txt #清空文件内容
[root@localhost ~]# cat /opt/p.txt
[root@localhost ~]#
管道(操作符号 | )
作用:将前面命令的输出,传递给后面命令,作为后面命令的参数
Linux中大多数配置文件内容,以#开头的行为注释行
显示配置文件有效信息(去除以#开头的注释行和去除空行
[root@localhost ~]# grep -v ^# /etc/login.defs | grep -v ^$ >/opt/log.txt
[root@localhost ~]# cat /opt/log.txt
MAIL_DIR /var/spool/mail
UMASK 022
HOME_MODE 0700
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_WARN_AGE 7
UID_MIN 1000
UID_MAX 60000
SYS_UID_MIN 201
SYS_UID_MAX 999
find精确查找
格式:find [目录] [条件]
-type
(f文本文件,d目录,l快捷方式)
[root@localhost ~]# find /boot/ -type d
/boot/
/boot/efi
/boot/efi/EFI
/boot/efi/EFI/rocky
/boot/grub2
/boot/grub2/i386-pc
/boot/grub2/locale
/boot/grub2/fonts
/boot/loader
/boot/loader/entries
-name “文档名称” (-iname 忽略大小写)
[root@localhost ~]# find /etc/ -name 'passwd'
/etc/pam.d/passwd
/etc/passwd
-user 用户名 (按照数据的所有者)
[root@localhost ~]# find /home/ -user natasha
/home/natasha
/home/natasha/.mozilla
/home/natasha/.mozilla/extensions
/home/natasha/.mozilla/plugins
/home/natasha/.bash_logout
/home/natasha/.bash_profile
/home/natasha/.bashrc
-mtime 修改时间 (所有的时间都是过去时间)
-mtime +90 #90天之前的数据
-mtime -90 #最近90天之内的数据
三个月之前的数据:
[root@A /]# find /var -mtime +90
最近10天之内的数据:
[root@A /]# find /root -mtime -10
高级使用
- -exec额外操作开始
- ; 表示额外操做的结束
- {}前面find命令每一个的查询结果
vim末行模式操作
读取文件内容
[root@localhost /]# echo 123456 > /opt/aa.txt
[root@localhost /]# echo hahaxixi > /opt/cc.txt
[root@localhost /]# vim /opt/cc.txt
末行模式下 :r /opt/aa.txt
末行模式下 :r /etc/passwd
末行模式下 :r /etc/shells
字符串替换
:1,10s/root/new/g 替换第1-10行所有的“root”
:%s/root/new/g 替换文件内所有的“root”
[root@localhost /]# cp /etc/passwd /opt/s.txt
[root@localhost /]# vim /opt/s.txt
开关参数的控制
:set nu或 nonu 显示/不显示行号
:set ai或 noai 启用/关闭自动缩进
[root@localhost /]# vim /opt/h.txt
:set ai
永久开关功能设置
[root@nb ~]# vim /root/.vimrc
set nu
[root@nb ~]# vim /etc/passwd #测试是否开启行号
[root@nb ~]# vim /opt/pass.txt
vimdiff同时比对或修改多个文件
[root@a ~]# echo hahaxixi > /opt/aa.txt
[root@a ~]# echo hahaabc > /opt/bb.txt
[root@a ~]# vimdiff /opt/aa.txt /opt/bb.txt
命令模式下Ctrl与w同时按下,然后左右键移动光标
末行模式wqa保存全部文件并退出