linux文件指令、查看指令、搜索指令和压缩指令

本文详细介绍了Linux系统中常用的文件操作指令,包括创建、删除、复制、移动、查看文件内容等,以及文件搜索、日历显示、历史命令记录等功能。通过实例演示了如`mkdir`、`rm`、`cp`、`mv`、`cat`、`more`、`less`、`echo`、`head`、`tail`、`>`和`>>`重定向等命令的使用方法,帮助用户更好地掌握Linux文件系统管理。

文件指令



创建文件夹


mkdir [选项] 要创建的目录

选项:-p:创建多级目录


删除空目录

rmdir [选项] 要删除的空目录

删除非空目录使用rm -rf 目录

创建一个新文件

touch 文件名


复制一个文件

cp [选项] 源文件 目标目录

-r:递归复制整个文件夹

\cp [选项] 源文件 目标文件强制覆盖不提示的复制


删除文件

rm [选项] 要删除的文件/目录

-r:递归删除整个文件夹

-f:强制删除不提示


移动文件与目录或者重命名

mv 源文件名 修改后的文件名:重命名

mv 源文件 目标地址:移动文件

mv cat.txt /home/pig.txt移动并且重命名


查看文件内容

cat [选项] 要查看的文件

-n:显示行号

cat只能浏览文件,不能修改文件

管道命令,将前面的结果交给下一个命令处理

一般为了方便浏览一般会带上管道命令 | more

cat text.txt|more



查看指令


more指令

more 查看的文件
在这里插入图片描述

less指令

是用来分屏查看文件内容,加载部分内容显示,比more指令高级

less 查看的文件

在这里插入图片描述


echo指令

输出内容到控制台

echo [选项] [输出内容]

echo $PATH
echo $HOSTNAME
echo hello

head指令

用于显示文件的开头部分内容,默认显示文件的前十行。

head 文件

head -n 5 文件


tail指令

用于显示文件尾部的内容,默认是显示文件的后十行

tail 文件

tail -n 5 文件

tail -f 文件实时更新该文档的所有更新,Ctrl + c退出


>输出重定向和>>追加指令

>指令可以将前面的内容覆盖带后面的文件,例如:cat a.txt > b.txt,将a文件的内容以覆盖的方式添加到b文件

>>指令可以将前面的内容添加带后面的文件,例如:cat a.txt >> b.txt,将a文件的内容添加到b文件后面

ls -l > 文件           将列表内容写入文件a.txt中(覆盖)
ls -al >> 文件         将列表内容追加到文件a.txt中(未覆盖)
cat 文件1 > 文件2       将文件1的内容覆盖到文件2
echo "hello" >> 文件
文件不存在时,会自动创建

cal显示当前日历信息


ln指令

软连接也称符号连接,类似于windows里的快捷方式,主要存放了链接其他文件的路径

ln -s [源文件/目录] [软链接名] 给源文件创建一个软连接


history指令

查看已经执行过的历史命令,也可以执行历史指令

history查询所有历史命令

history 10 查询最近十条命令

!21执行历史命令中的第21条命令


date显示当前日期

date
date + %Y
date + %m
date + %d
date "+%Y-%m-%d %H:%M:%S"

date设置日期

date -s 字符串时间比如

date -s "2021-2-24 11:02:01"


cal查看日历指令

cal 2020显示2020年的日历



搜索查找


find指令

find指令将从指定目录向下递归的遍历其各个子目录,将满足条件的文件或目录显示在终端

find [搜索范围] [选项]

-name<文件名>  按照指定文件名查找文件         find /name -name hello.java
-user<用户名>  查找属于指定用户名的所有文件    find /name -user huang
-size<文件大小> 按照指定的文件大小查找文件     find /name -size -2k
(+5k大于  -5k小于 5k等于,k,M,G)

ll - h将列表的大小转换为M,G


locate指令

locate指令可以快速定位文件路径,locate指令利用事先建立的系统中所有的文件名称以及路径的locate数据库快速定位给定的文件。

locate 搜索文件

第一次使用时必须使用updatedb指令创建locate数据库


which指令

可以查看某个指令在哪个目录下

which ls查询ls指令在哪个目录下


grep指令 和 管道符号 “|”

grep [选项] 查找内容 源文件

-n 显示匹配行以及行号

-i 忽略字母大小写

cat date.txt | grep -n "yes"



压缩指令


压缩/解压文件

gzip/gunzip指令

gzip 文件 压缩文件,只能将文件压缩为gz文件

gunzip 文件解压文件


zip/unzip指令

zip [选项] 压缩包的名字 将要压缩的内容

例如:zip -r myhome.zip /home/home下所有的文件压缩成myhome.zip

unzip [选项] 压缩包的名字 解压缩的文件

例如:unzip -d /opt/tmp myhome.zipmyhome.zip压缩包里的内容,解压缩到opt/tmp


tar指令

tar指令是打包指令,最后打包后的文件是.tar.gz的文件。

tar [选项] XXX.tar.gz 打包的内容

选项

选项功能
-c产生.tar打包文件
-v显示详细信息
-f指定压缩后的文件名
-z打包的同时压缩
-x解包.tar文件

例如:

打包:tar -cvfz mydata.tar.gz data.txt,将data.txt打包压缩为mydata.tar.gz

解包:tar -xf mydata.tar.gz -C ./tmp, 将mytata.tar.gz里的内容,解包到./tmp中,注意-C大写

<think> 根据用户的问题提供的引用,用户想了解Linux系统下文件压缩指令。根据引用内容,Linux有多种压缩工具,每种工具对应不同的压缩格式指令。用户需要的是压缩指令,因此我们将重点放在压缩命令上,而非解压缩。 从引用中提取的压缩指令: 1. **tar**: 用于创建归档并压缩(常与gzip或bzip2结合) - 压缩:`tar -czvf 压缩文件.tar.gz 要压缩文件/目录` 2. **gzip**: 压缩单个文件(不能压缩目录,除非使用`-r`递归) - 压缩:`gzip 文件名`(生成.gz文件- 递归压缩目录:`gzip -r 目录名` 3. **zip**: 压缩文件或目录 - 压缩:`zip 压缩文件.zip压缩文件或目录` 4. **bzip2**: 压缩单个文件(生成.bz2文件- 压缩:`bzip2 文件名` 5. **xz**: 压缩单个文件(生成.xz文件- 压缩:`xz 文件名` 注意:gzip、bzip2、xz通常用于单个文件,而tar常用于将多个文件或目录打包成一个文件后再压缩。因此,实际中常使用tar结合其他压缩工具(如gzip、bzip2、xz)来压缩目录。 根据引用[2][3],我们整理出常用的压缩指令: ### 1. 使用tar压缩 - 压缩为gzip格式(.tar.gz或.tgz): ```bash tar -czvf 压缩包名称.tar.gz 文件或目录路径 ``` 选项说明: - `c`: 创建归档 - `z`: 使用gzip压缩 - `v`: 显示过程(可选) - `f`: 指定文件- 压缩为bzip2格式(.tar.bz2): ```bash tar -cjvf 压缩包名称.tar.bz2 文件或目录路径 ``` - 压缩为xz格式(.tar.xz): ```bash tar -cJvf 压缩包名称.tar.xz 文件或目录路径 ``` ### 2. 使用gzip压缩 - 压缩单个文件: ```bash gzip 文件名 # 压缩后生成 文件.gz,并删除原文件 ``` 保留原文件压缩: ```bash gzip -c 文件名 > 文件.gz ``` - 递归压缩目录(注意:gzip本身不打包目录,所以会递归压缩目录下的每个文件,生成多个.gz文件): ```bash gzip -r 目录名 ``` ### 3. 使用zip压缩 - 压缩文件或目录: ```bash zip -r 压缩包名称.zip 文件或目录路径 ``` 选项说明: - `-r`: 递归处理目录 ### 4. 使用bzip2压缩 - 压缩单个文件: ```bash bzip2 文件名 # 压缩后生成 文件.bz2,并删除原文件 ``` 保留原文件: ```bash bzip2 -k 文件名 ``` ### 5. 使用xz压缩 - 压缩单个文件: ```bash xz 文件名 # 压缩后生成 文件.xz,并删除原文件 ``` 保留原文件: ```bash xz -k 文件名 ``` ### 总结常用压缩命令 - **压缩目录(最常用)**:使用`tar`结合压缩选项(如`-z`、`-j`、`-J`) - **压缩单个文件**:可直接用`gzip`、`bzip2`、`xz`,但要注意这些命令默认会删除原文件,可以使用`-k`选项(如果支持)保留原文件,或者使用重定向(如gzip的`-c`选项)。 用户问题仅要求压缩指令,因此我们不需要提供解压指令。 根据引用[1],Linux中不同的压缩命令对应不同的压缩格式,用户需要根据压缩格式选择合适的命令。引用中提到的压缩格式有:.tar.gz(或.tgz)、.gz、.zip.bz2、.xz。 最后,生成相关问题。 </think>### Linux系统文件压缩指令详解 在Linux系统中,文件压缩主要通过以下工具实现,不同工具对应不同的压缩格式命令: #### 1. **tar命令(归档+压缩)** 最常用的压缩方式,支持多种压缩算法: ```bash # 压缩为gzip格式 (.tar.gz) tar -czvf 压缩包名.tar.gz 文件/目录 # 压缩为bzip2格式 (.tar.bz2) tar -cjvf 压缩包名.tar.bz2 文件/目录 # 压缩为xz格式 (.tar.xz) tar -cJvf 压缩包名.tar.xz 文件/目录 ``` **选项说明**: - `-c` 创建归档 - `-z` 使用gzip压缩 - `-j` 使用bzip2压缩 - `-J` 使用xz压缩 - `-v` 显示过程 - `-f` 指定文件名[^2][^3] #### 2. **gzip压缩** 适用于单个文件: ```bash # 压缩文件(默认删除源文件) gzip 文件名 # 压缩目录(递归) gzip -r 目录名 # 保留源文件压缩 gzip -c 源文件 > 压缩文件.gz ``` 生成`.gz`格式文件,常用于日志压缩[^3] #### 3. **zip压缩** 跨平台兼容的压缩方式: ```bash # 压缩文件/目录 zip -r 压缩包名.zip 文件或目录 ``` **选项**: - `-r` 递归压缩目录 - `-l` 显示压缩信息[^3] #### 4. **bzip2压缩** 高压缩率工具: ```bash bzip2 文件名 # 生成.bz2文件 bzip2 -k 文件名 # 保留源文件 ``` #### 5. **xz压缩** 新一代高压缩率工具: ```bash xz 文件名 # 生成.xz文件 ``` ### 格式对比表 | 压缩格式 | 命令示例 | 特点 | |----------|----------|------| | .tar.gz | `tar -czvf` | 平衡速度与压缩率 | | .tar.bz2 | `tar -cjvf` | 较高压缩率 | | .tar.xz | `tar -cJvf` | 最高压缩率 | | .gz | `gzip` | 快速单文件压缩 | | .zip | `zip -r` | 跨平台兼容 | **使用建议**: 1. 压缩目录首选`tar`命令组合(如.tar.gz) 2. 快速压缩单个文件用`gzip` 3. 需Windows兼容时用`zip` 4. 追求最高压缩率用`xz`或`bzip2` > 示例:将`/data`目录压缩为gzip格式 > `tar -czvf data_backup.tar.gz /data`[^1][^2]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力生活的黄先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值