linux中tar解压gz文件方法详解linux操作系统

2024-09-18

linux中tar解压gz文件方法详解linux操作系统(共3篇)

1.linux中tar解压gz文件方法详解linux操作系统 篇一

在linux中有朋友会发现有tar.xz文件,这种文件有的可能是头一次要怎么解压呢,下面我给大家介绍,

简单命令

代码如下复制代码

$xz -d ***.tar.xz

$tar -xvf***.tar

可以看到tar.xz 文件,采用双层压缩方式,外层用xz压缩,里层用tar压缩

下在看在Centos中:

yum -y install xz 完成后

运行 xz -d x.tar.xz 得到 x.tar ,

然后 tar -xvf x.tar 就解压到了,

2.linux中tar解压gz文件方法详解linux操作系统 篇二

先看实例

删除复制移动文件命令

Linux代码

rm -rf /file

-r:递归处理参数

-f:强制删除所有文件

Linux代码

cp /test1/file1 /test3/file2

将file1复制到test3下,并改名为file2

Linux代码

cp -a test test1

将test目录下的所有子目录复制到test1下

Linux代码

mv /test1/file1 /test2/test2

将file1移动到test2下,并改名为test2

cp命令

该命令d功能匙将给出d文件或目录拷贝到另一文件或目录中,同MSDOS下dcopy命令一样,功能十分强大。

语法: cp [选项] 源文件或目录 目标文件或目录

说明:该命令把指定d源文件复制到目标文件或把多个源文件复制到目标目录中。

该命令d各选项含义如下:

- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项d组合。

- d 拷贝时保留链接。

- f 删除已经存在d目标文件而不提示。

- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,匙交互式拷贝。

- p 此时cp除复制源文件d内容外,还将把其修改时间和访问权限也复制到新文件中。

- r 若给出d源文件匙一目录文件,此时cp将递归复制该目录下所有d子目录和文件。此时目标文件必须为一个目录名。

- l 不作拷贝,只匙链接文件。

mv 命令

功能说明:移动或更名现有的文件或目录。

语 法:mv [-bfiuv][--help][--version][-S <附加字尾>][-V <方法>][源文件或目录][目标文件或目录]

补充说明:mv可移动文件或目录,或是更改文件或目录的名称,

参 数:

-b或--backup 若需覆盖文件,则覆盖前先行备份。

-f或--force 若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文 件或目录。

-i或--interactive 覆盖前先行询问用户。

-S<附加字尾>或

--suffix=<附加字尾> 与-b参数一并使用,可指定备份文件的所要附加的字尾。

-u或--update 在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件。

-v或--verbose 执行时显示详细的信息。

-V=<方法>或

--version-control=<方法> 与-b参数一并使用,可指定备份的方法。

--help 显示帮助。

--version 显示版本信息。

名称:rm

使用权限:所有使用者

使用方式:rm [options] name...

说明:删除档案及目录。

参数:?

-i 删除前逐一询问确认。

-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。

-r 将目录及以下之档案亦逐一删除。

范例:

删除所有C语言程式档;删除前逐一询问确认 :

rm -i *.c

将 Finished 子目录及子目录中所有档案删除 :

rm -r Finished

功能说明:删除文件或目录。

语 法:rm [-dfirv][--help][--version][文件或目录...]

补充说明:执行rm指令可删除文件或目录,如欲删除目录必须加上参数“-r”,否则预设仅会删除文件。

参 数:

-d或--directory 直接把欲删除的目录的硬连接数据删成0,删除该目录。

-f或--force 强制删除文件或目录。

-i或--interactive 删除既有文件或目录之前先询问用户。

-r或-R或--recursive 递归处理,将指定目录下的所有文件及子目录一并处理。

-v或--verbose 显示指令执行过程。

--help 在线帮助。

3.linux中tar解压gz文件方法详解linux操作系统 篇三

golang处理压缩包,最常用的就是tar.gz了,这里写了一个测试一下。

压缩文件:

代码如下:

package main

import (

“fmt”

“os”

“io”

“archive/tar”

“compress/gzip”

)

func main {

// file write

fw, err := os.Create(“tar/lin_golang_src.tar.gz”)

if err != nil {

panic(err)

}

defer fw.Close()

// gzip write

gw := gzip.NewWriter(fw)

defer gw.Close()

// tar write

tw := tar.NewWriter(gw)

defer tw.Close()

// 打开文件夹

dir, err := os.Open(“file/”)

if err != nil {

panic(nil)

}

defer dir.Close()

// 读取文件列表

fis, err := dir.Readdir(0)

if err != nil {

panic(err)

}

// 遍历文件列表

for _, fi := range fis {

// 逃过文件夹, 我这里就不递归了

if fi.IsDir() {

continue

}

// 打印文件名称

fmt.Println(fi.Name())

// 打开文件

fr, err := os.Open(dir.Name() + “/” + fi.Name())

if err != nil {

panic(err)

}

defer fr.Close()

// 信息头

h := new(tar.Header)

h.Name = fi.Name()

h.Size = fi.Size()

h.Mode = int64(fi.Mode())

h.ModTime = fi.ModTime()

// 写信息头

err = tw.WriteHeader(h)

if err != nil {

panic(err)

}

// 写文件

_, err = io.Copy(tw, fr)

if err != nil {

panic(err)

}

}

fmt.Println(“tar.gz ok”)

}

解压文件:

代码如下:

package main

import (

“fmt”

“os”

“io”

// “time”

“archive/tar”

“compress/gzip”

)

func main() {

// file read

fr, err := os.Open(“tar/lin_golang_src.tar.gz”)

if err != nil {

panic(err)

}

defer fr.Close()

// gzip read

gr, err := gzip.NewReader(fr)

if err != nil {

panic(err)

}

defer gr.Close()

// tar read

tr := tar.NewReader(gr)

// 读取文件

for {

h, err := tr.Next()

if err == io.EOF {

break

}

if err != nil {

panic(err)

}

// 显示文件

fmt.Println(h.Name)

// 打开文件

fw, err := os.OpenFile(“file2/” + h.Name, os.O_CREATE | os.O_WRONLY, 0644/*os.FileMode(h.Mode)*/)

if err != nil {

panic(err)

}

defer fw.Close()

// 写文件

_, err = io.Copy(fw, tr)

if err != nil {

panic(err)

}

}

fmt.Println(“un tar.gz ok”)

}

这样以后打包下载东西的时候就可以使用了,

上一篇:宣传推广协议书下一篇:智慧城管建设方案