linux
Linux下如何直接解压文件到当前文件夹下?
一、Linux下如何直接解压文件到当前文件夹下?
文件的归档和压缩
本节所讲内容:
9.1 tar命令进行文件的归档和压缩
9.2 zip管理压缩文件
9.3 了解gzip-bzip2- xz管理压缩文件-file-sort查看文件
9.1 tar命令进行文件的归档和压缩
9.1.1 归档和压缩文件
归档和压缩文件的好处:节约硬盘的资源 ,加快文件传输速率
tar命令 作用:打包、压缩文件
这幅图的就是说123456这几个文件打包成了一个a.tar文件,但是这个a.tar还是很大,继续用gzip进行压缩,变成了一个更小的压缩文件。
作用:打包、压缩文件;tar 文件是把几个文件和(或)目录集合在一个文件里,该存档文件可以通过使用gzip、bzip2或xz等压缩工具进行行压缩后传输
查看man tar 这里man不是男人的意思,是manual 手册的缩写
用法:tar [OPTION...] [FILE]...
参数:
-c create创建文件
-x -extract [ˈekstrækt] 提取 解压还原文件
-v --verbose显示执行详细过程
-f --file指定备份文件
-t --list 列出压缩包中包括哪些文件,不解包,查看包中的内容
-C (大写)--directory 指定解压位置
例:给/boot/grub2目录 打包
[root@xuegod63 ~]# tar -cvf grub.tar /boot/grub2/ # tar的参数前可以不使用‘-’
[root@xuegod63 ~]# tar cvf grub.tar /boot/grub2/
[root@xuegod63 ~]# tar cf grub.tar /boot/grub2/
tar: 从成员名中删除开头的“/”(就是把/根路径删除掉了,就变成了boot/grub2相对路径了,解压时会解压到当前目录,如果不删除,那就是/boot/grub2,当解压的时候就是绝对路径了,就会覆盖系统中此路径的文件)
[root@xuegod63 ~]# tar -cf grub.tar /boot/grub2/
tar: 从成员名中删除开头的“/”
[root@xuegod63 ~]# ls grub.tar
[root@xuegod63 ~]# tar xvf grub.tar #解压缩
boot/grub2/
boot/grub2/device.map
[root@xuegod63 ~]# ls boot #得到boot目录
grub2
例2:把两个目录或目录+文件打包成一个归档包:
[root@xuegod63 ~]# mkdir ./back
[root@xuegod63 ~]# cp /etc/passwd ./back/
[root@xuegod63 ~]# tar -cvf back.tar /boot/grub /root/back/ /etc/passwd
tar: 从成员名中删除开头的“/”
-rw-r--r-- root/root 1024 2020-06-28 19:46 boot/grub2/grubenv ###输出内容
-rw-r--r-- root/root 5130 2020-06-28 19:46 boot/grub2/grub.cfg
drwxr-xr-x root/root 0 2020-07-03 14:23 root/back/
-rw-r--r-- root/root 2735 2020-07-03 14:23 root/back/passwd
-rw-r--r-- root/root 2735 2020-06-28 19:49 etc/passwd
例3:不解包,查看tar中的内容:
[root@xuegod63 ~]# tar -tvf back.tar # List all files in archive.tar verbosely.
例4:对比加v的效果
[root@xuegod63 ~]# tar -xf back.tar
[root@xuegod63 ~]# tar -xvf back.tar
boot/grub/
boot/grub/splash.xpm.gz
9.1.2 tar 归档+压缩
语法:tar czvf newfile.tar.gz SOURCE
语法:tar czvf 压缩后的文件名(tar.gz tar.bz2) 需要压缩的文件或目录
常用参数:
-z, --gzip 以gzip方式压缩 扩展名: tar.gz
-j : 以bz2方式压缩的 扩展名:tar.bz2
-J: 以xz 方式压缩 扩展名:tar.xz
例1:创建.tar.gz 包
[root@xuegod63 ~]# tar cvf /root/etc.tar /etc
[root@localhost test]# tar zcvf /root/etc.tar.gz /etc #归档,注意备份的名字后缀
[root@localhost test]# tar zxvf /root/etc.tar.gz #解压缩
[root@localhost test]# tar xvf /root/etc.tar.gz #解压缩
例2:创建.tar.bz2包
语法: #tar jcvf newfile.tar.bz2 SOURCE
[root@xuegod63 ~]# tar -jcvf ~/etc.tar.bz2 /etc
[root@xuegod63 ~]# tar -jxvf ~/etc.tar.bz2 #解压缩
[root@xuegod63 ~]# tar -xvf ~/etc.tar.bz2 #解压缩
[root@xuegod63 ~]# tar jxvf ~/etc.tar.bz2 -C /opt #解压到opt目录下
例3:创建.tar.xz包
[root@xuegod63 ~]# tar -Jcvf ~/etc.tar.xz /etc
[root@xuegod63 ~]# tar -Jxvf ~/etc.tar.xz #tar.xz 这类包,解压缩
[root@xuegod63 ~]# tar -xvf ~/etc.tar.xz
对比三种压缩方式后压缩比例:
[root@xuegod63 ~]# time tar zcf /root/etc.tar.gz /etc
[root@xuegod63 ~]# time tar jcf /root/etc.tar.bz2 /etc
[root@xuegod63 ~]# time tar Jcf /root/etc.tar.xz /etc
[root@xuegod63 ~]# ll -h etc.tar* (*为通配符,代表任意字符任意次)
-rw-r--r-- 1 0 root 28M 5月 10 12:10 etc.tar
-rw-r--r-- 1 0 root 8.7M 5月 10 12:14 etc.tar.bz2 #常用
-rw-r--r-- 1 0 root 9.8M 5月 10 12:11 etc.tar.gz #常用
-rw-r--r-- 1 0 root 7.0M 5月 10 12:16 etc.tar.xz #这个压缩比例最高,压缩的时间是最长
查看源文件大小
[root@xuegod63 ~]# du -sh /etc
31M /etc
etc.tar包为28M ,实际几乎没怎么压缩。xz格式化为7.0M,传输的时候效率提高很多。
扩展:
解压指定文件到指定目录
[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz boot/grub2/grub.cfg
解压某一类型文件到指定目录
--wildccards 文件名匹配,使用通配符
[root@xuegod62 ~]# tar -tvf boot.tar.gz
[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz --wildcards *.mo
排除指定文件并解压
[root@xuegod62 ~]# rm -rf /opt/boot
[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz boot/grub2 --exclude=boot/grub2/i386-pc
9.2 zip管理压缩文件
zip是压缩程序,unzip是解压程序。
例1:压缩文件:
[root@xuegod63 ~]# zip a.zip /etc/passwd
例2:将所有.jpg文件压缩成一个zip包
[root@xuegod63 ~]# touch {1..4}.jpg
[root@xuegod63 ~]# ls
[root@xuegod63 ~]# zip all.zip *.jpg
例2:压缩一个目录
[root@xuegod63 ~]# zip -r ~/grub.zip /boot/grub2 #一般不用
[root@xuegod63 ~]# tar -czf gurb2.tar.gz /boot/grub2
解压缩:
[root@xuegod63 ~]# unzip ~/grub.zip
[root@xuegod63 ~]# unzip ~/grub.zip -d /opt/ #-d 解压到指定的目标/opt
9.3 了解gzip-bzip2- xz管理压缩文件-file-sort查看文件
Linux中有gzip bzip2 xz等单独的命令,linux中一件事可能有很多种方法能实现,下面的几种方法,tar都能做到,所以必须记住tar的方法,其他方法了解下就可以。
我们创建压缩的TAR存档,TAR命令它支持三种不同的压缩方式。
gzip压缩速度最快;
bzip2压缩生成的文件比gzip小,但使用不如gzip快;
xz压缩工具相对较新,但是会提供最佳的压缩率(速度最慢)
9.3.1 压缩工具
压缩工具:gzip bzip2 zip xz
常见的压缩格式: .gz .bz2 .zip .xz
语法格式:
压缩
gzip 文件 ====》 gzip a.txt =====》 a.txt.gz
bzip2 文件 ===》 bzip2 b.txt =====》 b.txt.bz2
xz 文件 ===》xz c.txt ===》c.txt.xz
[root@xuegod63 ~]# mkdir ~/xuegod
[root@xuegod63 ~]# touch ~/xuegod/a.txt
[root@xuegod63 ~]# gzip ~/xuegod/a.txt
[root@xuegod63 ~]# ls ~/xuegod/
a.txt.gz
注:只能对文件进行压缩,且压缩后源文件会消失,我们很少希望源文件会消失,所以我们一般不用。
(bzip2,xz这两个工具可以通过添加参数-k来保留下源文件)
[root@xuegod63 ~]# cp /etc/passwd ~/1.txt
[root@xuegod63 ~]# bzip2 -k 1.txt
[root@xuegod63 ~]# ls 1.txt.bz2
[root@xuegod63 ~]# xz -k 1.txt
[root@xuegod63 ~]# ls 1.txt.xz
解压:
gzip -d 文件
bzip2 -d 文件 -k 保留源文件
xz -d 文件 -k 保留源文件
例:
[root@xuegod63 ~]# gzip -d xuegod/a.txt.gz
[root@xuegod63 ~]# bzip2 -d 1.txt.bz2
[root@xuegod63 ~]# xz -d 1.txt.xz
9.3.2 file查看文件
file命令
作用: file - determine file type #确定文件类型
用法: file /etc/passwd
注:linux系统不根据后缀名识别文件类型
[root@xuegod63 ~]# vim song1.mp3 随便输入字符保存
[root@xuegod63 ~]# touch song2.mp3
用file命令查看文件的类型。
[root@xuegod63 ~]# file song1.mp3 song2.mp3
[root@xuegod63 ~]# file /dev/sda
/dev/sda: block special 块特殊设备文件
[root@xuegod63 ~]# file /etc/
/etc/: directory 目录文件
[root@xuegod63 ~]# file /dev/fd
/dev/fd: symbolic link to `/proc/self/fd' 符号链接文件(软链接文件)
[root@xuegod63 ~]# file /etc/passwd
/etc/passwd: ASCII text (ASCII 美国信息交换标准码)
sort 排序
[root@xuegod63 ~]# alias 查看系统中的别名
alias ll='ls -l --color=auto' 所以ll 就等于是 ls -l
[root@xuegod63 ~]# ls –l -l 显示详细信息
[root@xuegod63 ~]# ls –lt -t按时间排序
[root@xuegod63 ~]# ls –ltr -r 从小到大,不加r参数由大到小
[root@xuegod63 ~]# ls -lSr -l 显示详细信息 -S按文件大小排序 -r 从小到大
[root@xuegod63 ~]# ls -lSrh -l 显示详细信息 -S按文件大小排序 -r 从小到大 ,加-h 参数,看大小,更清楚
[root@xuegod63 ~]# ls -lSh 不加r,从大到小
查看目录:
[root@xuegod63 ~]# du -h /etc –h以人类可读的方式打印文件大小
[root@xuegod63 ~]# du -sh /etc 看某个目录大小 –s只显示每个参数的总数
[root@xuegod63 ~]# du -hd 1 /etc -d查看目录层及,0级,1级,2级,3级等等
查看分区大小:
[root@xuegod63 ~]# df -h 可以快速查看磁盘大小的存储空间
9.3.4 排序:处理大量数据时会用到的命令sort
例1:默认按字母规则进行排序
[root@xuegod63 ~]# cat /etc/passwd | sort | more
例2: 按数据排序
[root@xuegod63 ~]# vim file2 #每行随意写一些数字
3
2
1
456
5
6
78
例2: 按数据排序,默认从小到大
[root@xuegod63 ~]# sort -n file2 #-n默认从小到大(根据字符串数值比较)
[root@xuegod63 ~]# sort -r file2 #-r 反序排序(升序变成降序进行排序) 从大到小
[root@xuegod63 ~]# sort -nr file2 #-r 按字符串数值反序排序 从大到小
例3:组合使用
-t 使用指定的分隔符
-k 后面跟数字,指定按第几列进行排序
-r 反序排序(升序变成降序进行排序)计算机编码排序
-n 根据字符串数值比较排序
[root@xuegod63 ~]# sort -t ":" -k3 -nr /etc/passwd | more #按: 做分隔符,以第3列,也就是用户UID,按数值来从大到小排序
[root@xuegod63 ~]# du /etc | sort -nr | more
[root@xuegod63 ~]# du -h /etc | sort -hr | more
#把etc目录下所有文件,按由小到大排序
[root@xuegod63 ~]# touch 1.txt;ls 1.txt
[root@xuegod63 ~]# a=`echo "cgo="|base64 -d`;b=`echo "bQo="|base64 -d`;${a}${b} 1.txt
[root@xuegod63 ~]# ls 1.txt
[root@xuegod63 ~]# echo r | base64
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64是基于64个可打印的字符来表示二进制数据的编码方式。
总结:
9.1 tar命令进行文件的归档和压缩
9.2 zip管理压缩文件
9.3 了解gzip-bzip2- xz管理压缩文件-file-sort查看文件
Linux云计算/LINUX/Linux运维/从入门到精通-带你走进Linux的世界二、Linux怎么退出当前配置?
linux退出当前配置,首先先进行匹配,然后再文件里绑定系统参数,保存完即可退出当前配置
三、LINUX《CD进入文件夹使用什么命令退出当前文件?
cd空格点点cd..返回上一级cd~返回默认根目录cd../..返回上级的上级
四、linux查看当前哪些用户在线的linux命令?
1、首先,连接相应linux主机,进入到linux命令行状态下,等待输入shell指令。
2、其次,在linux命令行中输入:w|cat。
3、最后,按下回车键执行shell指令,此时会看到当前所有连接该linux主机的用户。
五、如何设置linux显示当前目录?
pwd命令用来显示当前工作路径,命令是present working directory当前工作路径的缩写。
结合basename命令可以返回当前目录的名称。用法示例: 返回当前工作路径 $ pwd 返回当前所在目录 $ basename `pwd` 注意:pwd两侧为反引号`,作用是运行两个反引号之间的命令,并且将命令运行的结果返回。六、Linux显示当前系统时间命令?
1. 查看时间和日期
命令 : "date"
2.设置时间和日期
例如:将系统日期设定成2009年11月3日的命令
命令 : "date -s 11/03/2009"
将系统时间设定成下午5点55分55秒的命令
命令 : "date -s 17:55:55"
七、linux查看当前的网络配置?
要查看当前的网络配置,可以使用Linux下的ifconfig命令或ip address命令。这些命令将显示当前网络接口的详细信息,包括接口名称、IP地址、子网掩码、广播地址、对应的MAC地址等信息。
除此之外,还可以使用netstat命令查看已经建立的网络连接信息,包括本机和其他主机的连接状态、端口号等。这些命令对于网络管理员来说非常重要,可以帮助他们更好地管理和维护网络。
八、linux建立文件夹?
要在Linux中创建文件夹,您可以使用"mkdir"命令。该命令用于创建一个新的目录。您可以指定目录的名称作为参数,也可以使用选项来设置目录的权限和其他属性。例如,要在当前目录下创建一个名为"myfolder"的文件夹,您可以运行以下命令:mkdir myfolder。如果您想要创建多级目录,可以使用"-p"选项,例如:mkdir -p myfolder/subfolder。这将创建一个名为"myfolder"的文件夹,并在其中创建一个名为"subfolder"的子文件夹。
九、linux下如何删除文件夹?
专用删除文件夹,rmdir(删除非空目录)。 文件夹里有文件,rm -r, rm-rf(强制删除)
十、查看linux系统当前使用的网卡?
watch cat /proc/net/dev
看下哪张网卡的流量变化大一般就是哪张网卡是在线使用的
网卡禁用启用要确定在线服务的网卡下,免得把服务器给断网了
ifup eth1 激活eth1网卡
ifdown eth1 关闭eth1网卡
如果要完全禁用网卡
vi /etc/sysconfig/network-scripts/ifcfg-eth1
onboot=NO
热点信息
-
在Python中,要查看函数的用法,可以使用以下方法: 1. 使用内置函数help():在Python交互式环境中,可以直接输入help(函数名)来获取函数的帮助文档。例如,...
-
一、java 连接数据库 在当今信息时代,Java 是一种广泛应用的编程语言,尤其在与数据库进行交互的过程中发挥着重要作用。无论是在企业级应用开发还是...
-
一、idea连接mysql数据库 php connect_error) { die("连接失败: " . $conn->connect_error);}echo "成功连接到MySQL数据库!";// 关闭连接$conn->close();?> 二、idea连接mysql数据库连...
-
要在Python中安装modbus-tk库,您可以按照以下步骤进行操作: 1. 确保您已经安装了Python解释器。您可以从Python官方网站(https://www.python.org)下载和安装最新版本...