Linux系统的常见命令十,打包以及解包、链接(tar、ln)

目录

本文主要介绍Linux系统的打包以及解包、链接命令tar、ln。

gzip 和bzip2只能压缩文件,但是不能压缩目录。而zip可以压缩文件也可以压缩目录但是解压过后内容全部都丢失了。打包就是把一些零零散散的东西全部都堆到一起。

tar命令

tar(tape archive)命令可以用于创建归档文件、将多个文件打包成一个归档文件、以及从归档文件中提取文件。在Linux系统中,tar命令是一个非常常用的命令。

tar命令的语法如下:

bash 复制代码
tar [options] [filename]

其中,options表示命令的选项,常用的选项包括:

  • c:创建一个新的归档文件;
  • x:从归档文件中提取文件;
  • v:显示tar命令的详细操作过程;
  • f:用于指定归档文件的名称;
  • z:用gzip压缩或解压缩文件;
  • j:用bzip2压缩或解压缩文件。

filename表示要操作的文件名或目录名。

举个例子:

  • 创建归档文件
bash 复制代码
tar cvf archive.tar file1 file2 file3

该命令将会把文件file1、file2和file3打包成一个归档文件archive.tar。

  • 解压缩归档文件
bash 复制代码
tar xvf archive.tar

该命令将会把归档文件archive.tar中的所有文件解压缩到当前目录。

  • 用gzip压缩归档文件
bash 复制代码
tar czvf archive.tar.gz file1 file2 file3

该命令将会用gzip压缩文件,并把压缩后的归档文件保存为archive.tar.gz。

  • 用gzip解压缩归档文件
bash 复制代码
tar xzvf archive.tar.gz

该命令将会把gzip压缩的归档文件archive.tar.gz中的所有文件解压缩到当前目录。

tar命令非常强大,可以通过不同的选项和参数来实现不同的操作。

需要根据具体的需求来选择使用哪些选项和参数。

汇总:

打包语法 后缀名 解包语法
tar -cvf 包名.tar .tar tar -xvf 包名.tar
tar -czvf 包名.tar.gz 或者 tar -zcvf 包名.tar.gz .tar.gz tar -xzvf 包名.tar.gz 或者 tar -zxvf 包名.tar.gz
tar -cjvf 包名.tar.bz2 或者 tar -jcvf 包名.tar.bz2 .tar.bz2 tar -xjvf 包名.tar.gz 或者 tar -jxvf 包名.tar.gz

以上语法中的v都可以忽略不写

ln命令

ln命令是Linux系统中常用的命令之一,用于创建一个新的链接文件,也就是所谓的软链接或硬链接(也称为快捷方式),与Windows中的快捷方式类似。ln命令还可以用于删除链接文件。

ln命令的语法格式如下:

bash 复制代码
ln [OPTIONS] SOURCE [LINK_NAME]

其中,OPTIONS表示选项,常用的选项有:

  • -s:创建软链接,也称为符号链接或软连接。
  • -f:删除目标文件(如果存在)而不提示用户。
  • -i:交互式操作模式,在创建链接文件之前询问用户是否需要替换已存在的文件。
  • -n:强制重建链接,即使目标文件已经存在。

SOURCE表示要创建链接的源文件,LINK_NAME表示创建的链接文件名(可以不指定,使用默认名称)。

举个例子:

  • 创建软链接
bash 复制代码
ln -s /path/to/source /path/to/link

该命令将在/path/to/目录下创建一个名为link的软链接,指向源文件/path/to/source。

  • 创建硬链接
bash 复制代码
ln /path/to/source /path/to/link

该命令将在/path/to/目录下创建一个名为link的硬链接,指向源文件/path/to/source。硬链接与源文件的inode号相同,删除其中一个文件不会影响另一个文件。

  • 删除链接文件
bash 复制代码
rm /path/to/link

该命令将会删除/link链接文件。

需要注意的是,软链接与硬链接有一些区别,其中:

  • 软链接是一个指向源文件的文件名,删除源文件并不会影响软链接,但是软链接本身如果被删除了,源文件仍然存在;
  • 硬链接是源文件的一个别名,删除源文件或硬链接文件都会相互影响,即如果删除源文件,该文件所对应的所有硬链接都会失效。

因此,在使用ln命令进行链接操作时,需要根据具体情况和需求选择使用软链接还是硬链接。

选择软链接的情况:

  1. 软链接可以跨文件系统和硬盘分区,而硬链接只能在同一个文件系统内使用。

  2. 软链接可创建的目标可以是一个目录,而硬链接只能链接到一个文件上。

  3. 软链接可以创建一个指向一个不存在的文件或目录的链接,硬链接不行。

  4. 软链接与源文件的 inode 号不相同,删除软链接不会删除源文件。

  5. 软链接可以创建循环链接,硬链接不行。

选择硬链接的情况:

  1. 硬链接是指向同一个 inode 号的文件,因此文件系统会将它们视为同一个文件,修改其中一个文件,另一个文件也会发生变化。

  2. 硬链接可以避免在不同目录下保存同一份文件,使得空间能够更有效地利用。

基于上述差异,我们可以根据需要选择硬链接或软链接。例如,若想在一个文件夹下创建一个文件的副本,但又不想占用太多空间,就可以使用硬链接。而如果需要创建一个指向另一个文件或目录的快捷方式,就可以使用软链接。

无论是软链接还是硬链接,都提供了一种通用的方法来为文件或目录创建别名,能够更加灵活地操作文件或目录。

相关推荐
sone1213815 分钟前
计算机网络(第8版)第四章 网络层(4.7.1~4.7.3)
服务器·网络·计算机网络
DO_Community28 分钟前
DigitalOcean Droplet 云服务器:新增自动扩展池功能
服务器
安科瑞刘鸿鹏32 分钟前
老旧小区用电安全保护装置#限流式防火保护器参数介绍#
运维·服务器·物联网·能源
ladymorgana40 分钟前
【运维笔记】windows 11 中提示:无法成功完成操作,因为文件包含病毒或潜在的垃圾软件。
运维·windows·笔记
Rain_Rong1 小时前
linux检测硬盘
linux·运维·服务器
过过过呀Glik1 小时前
在 Ubuntu 上安装 Muduo 网络库的详细指南
linux·c++·ubuntu·boost·muduo
我曾经是个程序员1 小时前
鸿蒙学习记录之http网络请求
服务器·学习·http
李昊哲小课1 小时前
deepin 安装 zookeeper
大数据·运维·zookeeper·debian·hbase
真真-真真2 小时前
WebXR
linux·运维·服务器
轩辰~2 小时前
网络协议入门
linux·服务器·开发语言·网络·arm开发·c++·网络协议