【快速入门Linux】9_Linux命令—find、软链接、打包和压缩、软件安装

简介: 【快速入门Linux】9_Linux命令—find、软链接、打包和压缩、软件安装

一、查找文件


1.1 命令查找


Linux下一切皆文件!!!

which 命令:找出命令的绝对路径。


python@ubuntu:~$ which mkdir
/bin/mkdir


whereis 命令:找出命令的路径以及文档手册信息。


python@ubuntu:~$ whereis mkdir
mkdir: /bin/mkdir /usr/share/man/man1/mkdir.1.gz /usr/share/man/man2/mkdir.2.gz


1.2 文件查找(find)


  • find 命令功能非常强大,通常用来在 特定的目录下搜索 符合条件的文件
  • find命令:精确查找,磁盘搜索,IO读写,CPU开销大。


1.2.1 找出来输出到屏幕


用法:


find 查找路径 选项 关键字


image.png


  • 如果省略路径,表示在当前文件夹下查找
  • 之前学习的通配符,在使用 find 命令时同时可用
### 演练目标
# 1. 搜索桌面目录下,文件名包含 `1` 的文件
python@ubuntu:~$ find Desktop/ -name "*1*"
# 2、 搜索桌面目录下,所有以 `.txt` 为扩展名的文件
python@ubuntu:~$ cd Desktop/
python@ubuntu:~/Desktop$ find -name "*.txt"
# 3、 搜索桌面目录下,以数字 `1` 开头的文件
python@ubuntu:~$ cd Desktop/
python@ubuntu:~/Desktop$ find -name "1*"

d49168ed56b4f604c1e692ce27040789.png


二、 软链接、硬链接


2.1 软链接


序号 命令 作用
01 ln -s 被链接的源文件 链接文件 建立文件的软链接,用通俗的方式讲类似于 Windows 下的快捷方式


注意:


  • 没有-s选项建立的是一个硬链接文件
  • 两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
  • 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用
###演练目标
# 1. 将桌面目录下的 01.py 移动到 demo/b/c 目录下
python@ubuntu:~$ cd Desktop/
python@ubuntu:~/Desktop$ cat 01.py
python@ubuntu:~/Desktop$ mv 01.py demo/b/c
# 2. 在桌面目录下新建 01.py 的 软链接 FirstPython
# 分别使用 相对路径 和 绝对路径 建立 FirstPython 的软链接
#① 相对路径
python@ubuntu:~/Desktop$ ln -s demo/b/c/01.py FirstPython
python@ubuntu:~/Desktop$ ls -l
总用量 24
-rw-rw-r-- 1 python   python  237 9月  13 09:40 123.txt
drwxrwxr-x 3 python   python 4096 9月  12 09:56 a
-rw-rw-r-- 1 python   python    6 9月  13 11:10 a.txt
drwxrwxr-x 3 python   python 4096 10月  2 10:37 demo
-rw-rw-r-- 1 python   python  440 9月  13 11:21 f
lrwxrwxrwx 1 python   python   14 10月  2 10:44 FirstPython -> demo/b/c/01.py
drwxrwxr-x 2 zhangsan python 4096 9月  23 14:43 Python学习
# ②绝对路径
python@ubuntu:~/Desktop$ ln -s /home/python/Desktop/demo/b/c/01.py FirstPython2
python@ubuntu:~/Desktop$ ls -l
总用量 24
-rw-rw-r-- 1 python   python  237 9月  13 09:40 123.txt
drwxrwxr-x 3 python   python 4096 9月  12 09:56 a
-rw-rw-r-- 1 python   python    6 9月  13 11:10 a.txt
drwxrwxr-x 3 python   python 4096 10月  2 10:37 demo
-rw-rw-r-- 1 python   python  440 9月  13 11:21 f
lrwxrwxrwx 1 python   python   14 10月  2 10:44 FirstPython -> demo/b/c/01.py
lrwxrwxrwx 1 python   python   35 10月  2 10:51 FirstPython2 -> /home/python/Desktop/demo/b/c/01.py
drwxrwxr-x 2 zhangsan python 4096 9月  23 14:43 Python学习
# 3. 将 FirstPython 移动到 demo 目录下,对比使用 相对路径 和 绝对路径 的区别
python@ubuntu:~/Desktop$ mv First* demo
python@ubuntu:~/Desktop$ tree
python@ubuntu:~/Desktop$ cd demo/
python@ubuntu:~/Desktop/demo$ cat FirstPython
cat: FirstPython: 没有那个文件或目录
python@ubuntu:~/Desktop/demo$ cat FirstPython2
1111


2.2 硬链接简介(知道)


  • 在使用 ln 创建链接时,如果没有 -s 选项,会创建一个 硬链接,而不是软链接
### 硬链接演练
# 1. 在 ~/Desktop/demo 目录下建立 ~/Desktop/demo/b/c/01.py 的硬链接 01_hard
python@ubuntu:~/Desktop/demo$ ln /home/python/Desktop/demo/b/c/01.py 01_hard
python@ubuntu:~/Desktop/demo$ ls -l
#2. 使用 ls -l 查看文件的硬链接数(硬链接——有多少种方式可以访问文件或者目录)
python@ubuntu:~/Desktop/demo$ ls -l
python@ubuntu:~/Desktop/demo$ cat 01_hard
#3. 删除 ~/Desktop/demo/b/c/01.py,并且使用 tree 来确认 demo 目录下的三个链接文件
python@ubuntu:~/Desktop/demo$ rm b/c/01.py
python@ubuntu:~/Desktop/demo$ tree
#说明:硬链接
python@ubuntu:~/Desktop/demo$ cat 01_hard  
1111
# 绝对路径
python@ubuntu:~/Desktop/demo$ cat FirstPython2
cat: FirstPython2: 没有那个文件或目录
# 相对路径
python@ubuntu:~/Desktop/demo$ cat FirstPython
cat: FirstPython: 没有那个文件或目录


2.3 文件软硬链接的示意图


e26b68883b64b0ddd542545a2f73b738.png


在 Linux 中,文件名文件的数据 是分开存储的

  • 提示:
  • 在 Linux 中,只有文件的 硬链接数 == 0 才会被删除
  • 使用 ls -l 可以查看一个文件的硬链接的数量
  • 在日常工作中,几乎不会建立文件的硬链接,知道即可


三、打包、压缩


打包压缩 是日常工作中备份文件的一种方式

在不同操作系统中,常用的打包压缩方式是不同的

Windows 常用 rar

Mac 常用 zip

Linux 常用 tar.gz


3.1 打包 / 解包


tar 是 Linux 中最常用的 备份工具,此命令可以 把一系列文件 打包到 一个大文件中,也可以把一个 打包的大文件恢复成一系列文件


  • tar 的命令格式如下:


# 打包文件
tar -cvf 打包文件.tar 被打包的文件/路径...
# 解包文件
tar -xvf 打包文件.tar


  • tar 选项说明


选项 含义
c 生成档案文件,创建打包文件
x 解开档案文件
v 列出归档解档的详细过程,显示进度
f 指定档案文件名称,f 后面一定是 .tar 文件,所以必须放选项最后


注意:f 选项必须放在最后,其他选项顺序可以随意

#### 打包解包演练
# 1. 删除桌面下的所有内容
python@ubuntu:~/Desktop$ rm -r *
# 2. 在桌面下新建三个空白文件 01.py、02.py、03.py。
python@ubuntu:~/Desktop$ touch 01.py
python@ubuntu:~/Desktop$ touch 02.py
python@ubuntu:~/Desktop$ touch 03.py
# 3. 将这三个文件打一个 py.tar 的包
python@ubuntu:~/Desktop$ tar -cvf py.tar 01.py 02.py 03.py
# 4. 新建 `tar` 目录,并且将 py.tar移动到 tar目录下
python@ubuntu:~/Desktop$ mkdir tar
python@ubuntu:~/Desktop$ mv py.tar tar
# 5. 解包 py.tar
python@ubuntu:~/Desktop$ cd tar
python@ubuntu:~/Desktop/tar$ tar -xvf py.tar


3.2 压缩/解压缩(重点)


1) gzip


tar 与 gzip 命令结合可以使用实现文件 打包和压缩

tar 只负责打包文件,但不压缩

用 gzip 压缩 tar 打包后的文件,其扩展名一般用 xxx.tar.gz

在 Linux 中,最常见的压缩文件格式就是 xxx.tar.gz


在 tar 命令中有一个选项 -z 可以调用 gzip,从而可以方便的实现压缩和解压缩的功能

命令格式如下:

# 压缩文件
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...
# 解压缩文件
tar -zxvf 打包文件.tar.gz
# 解压缩到指定路径
tar -zxvf 打包文件.tar.gz -C 目标路径


选项 含义
-C 解压缩到指定目录,注意:要解压缩的目录必须存在


python@ubuntu:~/Desktop$ tar -zcvf py.tar.gz *.py
python@ubuntu:~/Desktop$ mkdir gz
python@ubuntu:~/Desktop$ mv py.tar.gz gz
python@ubuntu:~/Desktop$ cd gz
python@ubuntu:~/Desktop/gz$ tar -zxvf py.tar.gz 


2) bzip2(two)


tar 与 bzip2 命令结合可以使用实现文件 打包和压缩(用法和 gzip 一样)

tar 只负责打包文件,但不压缩,

用 bzip2 压缩 tar 打包后的文件,其扩展名一般用 xxx.tar.bz2

在 tar 命令中有一个选项 -j 可以调用 bzip2,从而可以方便的实现压缩和解压缩的功能

命令格式如下:

# 压缩文件
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径...
# 解压缩文件
tar -jxvf 打包文件.tar.bz2

四、软件安装、卸载、更新


4.1 通过 apt 安装/卸载软件


  • apt 是 Advanced Packaging Tool,是 Linux 下的一款安装包管理工具
  • 可以在终端中方便的 安装卸载更新软件包


# 1. 安装软件
$ sudo apt install 软件包
# 2. 卸载软件
$ sudo apt remove 软件名
# 3. 更新已安装的包
$ sudo apt upgrade 

安装演练:

###安装演练
# 一个小火车提示($ sudo apt install sl)
python@ubuntu:~$ cd Desktop/
python@ubuntu:~/Desktop$ sudo apt install sl
python@ubuntu:~/Desktop$ sl
# 一个比较漂亮的查看当前进程排名的软件($ sudo apt install htop)
python@ubuntu:~/Desktop$ sudo apt install htop
python@ubuntu:~/Desktop$ htop
# 退出q


4.2 配置软件源


如果希望在 ubuntu 中安装软件,更加快速,可以通过设置镜像源,选择一个访问网速更快的服务器,来提供软件下载/安装服务

提示:更换服务器之后,需要一个相对比较长时间的更新过程,需要耐心等待。更新完成后,再安装软件都会从新设置的服务器下载软件了

所谓镜像源,就是所有服务器的内容是相同的(镜像),但是根据所在位置不同,国内服务器通常速度会更快一些!


90ae2a6330eb988fc488487eceec1c50.png



目录
相关文章
|
30天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
54 14
Linux 10 个“who”命令示例
|
9天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
32 8
|
19天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
104 20
|
19天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
48 7
|
8月前
|
NoSQL Java Linux
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
|
8月前
|
Linux
linux(二十七)打包压缩命令bzip2~
linux(二十七)打包压缩命令bzip2~
70 0
|
5月前
|
Linux
在Linux中,列出几种常见打包工具并写相应解压缩参数。
在Linux中,列出几种常见打包工具并写相应解压缩参数。
|
8月前
|
Linux Windows
Linux:为什么要打包和压缩?
Linux:为什么要打包和压缩?
Linux:为什么要打包和压缩?
|
8月前
|
Linux
linux命令行打包、压缩及解压缩
linux命令行打包、压缩及解压缩
51 0
|
8月前
|
Linux
linux 下 打包并使用xz 压缩
linux 下 打包并使用xz 压缩
49 1