# 10_ Python基础到实战一飞冲天(一)--linux基础(十)

10_ Python基础到实战一飞冲天(一)–linux基础(十)–软链接硬链接-tar-gzip-bzip2-apt-软件源

一、其他命令-04-文件软链接的演练实现

1、ubuntu 桌面文件如下图:

在这里插入图片描述

2、需求:文件软链接的演练(演练步骤)

1)将桌面目录下的 01.py 文件移动到 桌面目录下的 demo/b/c 目录下。

2)在桌面目录下新建 01.py软链接 FirstPython

* 分别使用 **相对路径** 和 **绝对路径** 建立 `FirstPython` 的软链接。

3)将 FirstPython 移动到桌面目录下的 demo 目录下,对比使用 相对路径绝对路径 的区别。

3、示例演示:

1)将桌面目录下的 01.py 文件移动到 桌面目录下的 demo/b/c 目录下。

mv 01.py demo/b/c/tree

在这里插入图片描述

2)在桌面目录下新建 01.py软链接 01_xiangdui 01_juedui

* 分别使用 **相对路径** 和 **绝对路径** 建立 `01_xiangdui ` 和  `01_juedui ` 的软链接。
#创建相对路径的软链接
ln  -s  demo/b/c/01.py  01_xiangduicat  01_xiangduils  -l#创建绝对路径的软链接
ln  -s  /home/python/桌面/demo/b/c/01.py  01_jueduicat  01_jueduils  -l

在这里插入图片描述

3)将 01_xiangdui 01_juedui 两个 软链接 移动到桌面目录下的 demo 目录下,对比使用 相对路径绝对路径 的区别。(相对路径的软链接失效)

python@Ubuntu-16:~/桌面$  tree
python@Ubuntu-16:~/桌面$  mv 01* demo
python@Ubuntu-16:~/桌面$  treepython@Ubuntu-16:~/桌面$  ls demo
01_juedui  01_xiangdui  b
python@Ubuntu-16:~/桌面$  cat demo/01_juedui 
#!/usr/bin/python
print("HelloWorld!")python@Ubuntu-16:~/桌面$  cat demo/01_xiangdui 
cat: demo/01_xiangdui: 没有那个文件或目录

在这里插入图片描述

在这里插入图片描述

二、其他命令-05-文件硬链接演练

1、硬链接简介(知道)

  • 在使用 ln 创建链接时,如果没有 -s 选项,会创建一个 硬链接,而不是软链接。
    ln 被链接的源文件 链接文件名

2、硬链接演练

1)在 ~/Desktop/demo 目录下建立 ~/Desktop/demo/b/c/01.py 的硬链接 01_hard

2) 使用 ls -l 查看文件的硬链接数(硬链接——有多少种方式可以访问文件或者目录)。

3)删除 ~/Desktop/demo/b/c/01.py,并且使用 tree 来确认 demo 目录下的三个链接文件。

3、硬链接演示

演示文件夹结构如下图

在这里插入图片描述

1)在 ~/Desktop/demo 目录下建立 ~/Desktop/demo/b/c/01.py 的硬链接 01_hard

python@Ubuntu-16:~/桌面/demo$  tree
python@Ubuntu-16:~/桌面/demo$  ln /home/python/桌面/demo/b/c/01.py 01_hard
python@Ubuntu-16:~/桌面/demo$  tree
python@Ubuntu-16:~/桌面/demo$  ls  -l

在这里插入图片描述

2) 使用 ls -l 查看文件的硬链接数(硬链接——有多少种方式可以访问文件或者目录)。

python@Ubuntu-16:~/桌面/demo$  ls  -l
python@Ubuntu-16:~/桌面/demo$  cat 01_hard
#!/usr/bin/python
print("HelloWorld!")

在这里插入图片描述

3)删除 ~/Desktop/demo/b/c/01.py,并且使用 tree 来确认 demo 目录下的三个链接文件。(源文件删除,硬链接仍然能够访问到数据)

python@Ubuntu-16:~/桌面/demo$  rm b/c/01.py 
python@Ubuntu-16:~/桌面/demo$  treepython@Ubuntu-16:~/桌面/demo$  cat 01_hard 
#!/usr/bin/python
print("HelloWorld!")python@Ubuntu-16:~/桌面/demo$  cat 01_juedui 
cat: 01_juedui: 没有那个文件或目录
python@Ubuntu-16:~/桌面/demo$  cat 01_xiangdui 
cat: 01_xiangdui: 没有那个文件或目录

在这里插入图片描述

三、其他命令-06-文件软硬链接工作方式简介

1、文件软硬链接的示意图

在这里插入图片描述

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

2、提示:

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

四、打包压缩-01-tar包简介和命令格式介绍

1、打包压缩

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

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

* `Windows` 常用 `rar`
* `Mac` 常用 `zip`
* `Linux` 常用 `tar.gz`

2、 打包 / 解包 tar 命令

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

2) tar 的命令格式如下:

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

3) tar 选项说明

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

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

五、打包压缩-02-打包和解包演练

1、打包解包演练步骤

1)删除桌面下的所有内容。
2)在桌面下新建三个空白文件 01.py02.py03.py
3)将这三个文件打一个 py.tar 的包。
4)新建 tar 目录,并且将 py.tar 移动到 tar 目录下。
5)解包 py.tar

2、打包解包演练示例

python@Ubuntu-16:~/桌面/demo$  cd ..
python@Ubuntu-16:~/桌面$  rm -r *
python@Ubuntu-16:~/桌面$  ls -l
总用量 0
python@Ubuntu-16:~/桌面$  touch 01.py 02.py 03.py
python@Ubuntu-16:~/桌面$  ls
01.py  02.py  03.py
python@Ubuntu-16:~/桌面$  tar -cvf py.tar 01.py 02.py 03.py 
01.py
02.py
03.py
python@Ubuntu-16:~/桌面$  ls -lh
总用量 12K
-rw-rw-r-- 1 python python   0 1110 17:48 01.py
-rw-rw-r-- 1 python python   0 1110 17:48 02.py
-rw-rw-r-- 1 python python   0 1110 17:48 03.py
-rw-rw-r-- 1 python python 10K 1110 17:49 py.tarpython@Ubuntu-16:~/桌面$  mkdir tar
python@Ubuntu-16:~/桌面$  mv py.tar  tar
python@Ubuntu-16:~/桌面$  tree
.
├── 01.py
├── 02.py
├── 03.py
└── tar└── py.tar1 directory, 4 files
python@Ubuntu-16:~/桌面$  cd tar
python@Ubuntu-16:~/桌面/tar$  tar -xvf py.tar 
01.py
02.py
03.py
python@Ubuntu-16:~/桌面/tar$  ll
总用量 20
drwxrwxr-x 2 python python  4096 1110 17:52 ./
drwxr-xr-x 3 python python  4096 1110 17:52 ../
-rw-rw-r-- 1 python python     0 1110 17:48 01.py
-rw-rw-r-- 1 python python     0 1110 17:48 02.py
-rw-rw-r-- 1 python python     0 1110 17:48 03.py
-rw-rw-r-- 1 python python 10240 1110 17:49 py.tar

在这里插入图片描述

在这里插入图片描述

六、打包压缩-03-gzip压缩和解压缩介绍和演练

1、 压缩/解压缩 命令 gzip

1) targzip 命令结合,可以使用实现文件 打包和压缩

* `tar` 只负责打包文件,但不压缩。
* 用 `gzip` 压缩 `tar` 打包后的文件,其扩展名一般用 `xxx.tar.gz`。

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

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

2、targzip 命令结合,命令格式如下:

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

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

3、targzip 命令结合,打包解包演练步骤

1)删除桌面下的所有内容。
2)在桌面下新建三个空白文件 01.py02.py03.py
3)将这三个文件打一个 py.tarpy.tar.gz 的包。
4)新建 targz 目录,并且将 py.tar 移动到 tar 目录下。py.tar.gz 移动到 gz 目录下。
5)解包 py.tarpy.tar.gz

4、targzip 命令结合,打包解包演练示例

在这里插入图片描述

七、打包压缩-04-bzip2压缩和解压缩介绍和演练

1、bzip2(two)

1) tarbzip2 命令结合可以使用实现文件 打包和压缩(用法和 gzip 一样)。

* `tar` 只负责打包文件,但不压缩。,
* 用 `bzip2` 压缩 `tar` 打包后的文件,其扩展名一般用 `xxx.tar.bz2`。

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

2、 tarbzip2 命令结合,命令格式如下:

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

3、tarbzip2 命令结合,打包解包演练步骤

1)删除桌面下的所有内容。
2)在桌面下新建三个空白文件 01.py02.py03.py
3)将这三个文件打一个py.tar.bz2 的包。
4)新建 bz2 目录。
5)解包 py.tar.bz2 ,使用 参数 -C 把 py.tar.bz2 解压到指定目录下 /home/python/桌面/bz2/ 目录下。

4、tarbzip2 命令结合,打包解包演练示例

在这里插入图片描述

在这里插入图片描述

八、软件安装-01-apt简介及命令格式介绍

1、软件安装 apt 简介:通过 apt 安装/卸载软件

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

2、apt 命令格式:

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

九、软件安装-02-apt软件安装演练

1、安装演练

# 一个小火车提示
$ sudo apt install sl# 一个比较漂亮的查看当前进程排名的软件
$ sudo apt install htop

2、安装演练示例:

#查看用户组 python 用户是否具有sudo权限
cat -n /etc/group | grep python #切换到 root 超级用户,给python用户添加sudo权限
su root 
usermod -G sudo python #切换回python用户
su python #查看sl是否已经安装
sl#根据提示,安装一个小火车提示
$ sudo apt install sl#查看系统中是否已经安装htop
htop#根据提示,安装一个比较漂亮的查看当前进程排名的软件
$ sudo apt install htop

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

十、软件安装-03-设置软件源

1、Ubuntu 配置软件源

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

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

2、镜像源

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

在这里插入图片描述

3、Ubuntu 配置软件源步骤:

依次点击:
【系统设置】
---》【软件和更新】
---》【Ubuntu软件】
---》【下载自:后面倒三角选择(其他站点)】
---》【其他站点】
---》选择【中国】下面一个镜像源(如:mirror.aliyun.com)
---》或者点击右侧【选择最佳服务器】)
---》输入用户密码(当前登录用户的密码),点击【授权】。
---》点击【关闭】,再点击【重新载入】。这时视你的网络快慢,可能要等待一会。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

上一节关联链接请点击:
# 09_ Python基础到实战一飞冲天(一)–linux基础(九)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/17815.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Python学习27天

字典 dict{one:1,two:2,three:3} # 遍历1: # 先取出Key for key in dict:# 取出Key对应的valueprint(f"key:{key}---value:{dict[key]}")#遍历2,依次取出value for value in dict.values():print(value)# 遍历3:依次取出key,value …

【Linux】进程的优先级

进程的优先级 一.概念二.修改优先级的方法三.进程切换的大致原理:四.上下文数据的保存位置: 一.概念 cpu资源分配的先后顺序,就是指进程的优先权(priority)。 优先权高的进程有优先执行权利。配置进程优先权对多任务环…

ubuntu无密码用SCP复制文件到windows

默认情况下,ubuntu使用scp复制文件到windows需要输入密码: scp *.bin dev001@172.16.251.147:~/Desktop/. 为了解决每次复制文件都要输入密码这个问题,需要按如下操作: 1.创建ssh密钥 ssh-keygen -t ed25519 -C "xxx_xxx_xxx@hotmail.com" 2.使用scp复制公钥到w…

单片机GPIO中断+定时器 软件串口通信

单片机GPIO中断定时器 软件串口通信 解决思路代码示例 解决思路 串口波特率9600bps,每个bit约为1000000us/9600104.16us; 定时器第一次定时时间设为52us即半个bit的时间,其目的是偏移半个bit时间,之后的每104us采样并读取1bit数据。使得采样…

使用Web Components构建模块化Web应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Web Components构建模块化Web应用 使用Web Components构建模块化Web应用 使用Web Components构建模块化Web应用 引言 Web Co…

每行数据个数在变的二维数组的输出

#include<stdio.h> int main() {//定义四个一维数组int arr1[1] { 1 };int arr2[3] { 1,2,3 };int arr3[5] { 1,2,3,4,5 };int arr4[7] { 1,2,3,4,5,6,7 };//把四个一维数组放进一个二维数组int* arr[4] { arr1,arr2,arr3,arr4};//预先计算好每一个数组真实的长度in…

【SSL证书】腾讯云SSL续签备忘录

适用于证书过期了&#xff0c;需要替换证书的场景。本备忘录为nginx使用证书场景 步骤&#xff1a;一共7步。 登录腾讯云控制台->申请免费证书->腾讯云审核->下载->登录服务器->替换证书->重启nginx 1.登录控制台 https://console.cloud.tencent.com/ssl…

AVL树

一.AVL树的概念 AVL树是一颗特殊的二叉搜索树。二叉搜索树在有些极端情况下可能会出现单支的情况&#xff0c;这会影响其插入查找的效率。而AVL树是一个高度平衡的二叉搜索树&#xff0c;它要求任何的左右子树的高低差都小于等于1。它可以通过去控制左右子树的高度差来控制二叉…

鸿蒙开发-网络数据访问、应用本地数据保存

HTTP概述 HTTP&#xff0c;全称Hyper Text Transfer Protocol 超文本传输协议。 HTTP请求为短连接。客户端发起请求&#xff0c;服务器返回响应。本次连接即结束。 添加网络权限 在访问网络之前&#xff0c;需要在module.json5中给APP添加网络权限 "module": {&…

画 五边形 思路

1. 计算圆心 view 中心点 2.规定半径 R < view宽度 / 2 3.计算五边形五个顶点&#xff08;角度A 2π / 5&#xff09; 4. 五点相连 转载&#xff1a; Android自定义控件 芝麻信用分雷达图 - 简书

网络工程实验三:DHCP的配置

#实验仅供参考&#xff0c;勿直接粘贴复制&#xff0c;用以学习交流# #对于软件的使用&#xff0c;请移步到实验一观看# 1、实验目的&#xff1a; &#xff08;1&#xff09;掌握DHCP工作原理。 &#xff08;2&#xff09;配置路由器作为DHCP服务器。 &#xff08;3&#x…

手写体识别Tensorflow实现

简介&#xff1a;本文先讲解了手写体识别中涉及到的知识&#xff0c;然后分步讲解了代码的详细思路&#xff0c;完成了手写体识别案例的讲解&#xff0c;希望能给大家带来帮助&#xff0c;也希望大家多多关注我。本文是基于TensorFlow1.14.0的环境下运行的 手写体识别Tensorflo…

【SpringBoot】公共字段自动填充

问题引入 JavaEE开发的时候&#xff0c;新增字段&#xff0c;修改字段大都会涉及到创建时间(createTime)&#xff0c;更改时间(updateTime)&#xff0c;创建人(craeteUser)&#xff0c;更改人(updateUser)&#xff0c;如果每次都要自己去setter()&#xff0c;会比较麻烦&#…

【项目开发】为什么文件名要小写?

未经许可,不得转载。 文章目录 一、可移植性二、易读性三、易用性四、便捷性一、可移植性 Linux 系统对文件名大小写敏感,而 Windows 和 Mac 系统则不敏感。这种差异可能导致跨平台的问题。 例如,以下四个文件名: computerComPutercomPuterCOMPOTer在 Linux 系统上,它们…

ssm127基于SSM的乡镇篮球队管理系统+jsp(论文+源码)_kaic

毕 业 设 计&#xff08;论 文&#xff09; 题目&#xff1a;乡镇篮球队管理系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本乡镇篮球队管理…

C#获取视频第一帧_腾讯云媒体处理获取视频第一帧

一、 使用步骤&#xff1a; 第一步、腾讯云开启万象 第二步、安装Tencent.QCloud.Cos.Sdk 包 第三步、修改 腾讯云配置 图片存储目录配置 第四步、执行获取图片并保存 二、封装代码 using System.Text; using System.Threading.Tasks;using COSXML.Model.CI; using COSXML.A…

【数据分享】2003-2022年各省土地利用面积统计数据

数据介绍 2003-2022年各省土地利用面积统计数据数据时间2003-2008、2013、2015-2017、2019、2022数据类型excel数据指标土地调查面积/万公顷农用地面积/万公顷园林面积/万公顷牧草地面积/万公顷建设用地面积/万公顷居民点及工矿用地/万公顷交通用地/万公顷水利设施用地/万公顷…

任务调度工具Spring Test

Spring Task 是Spring框架提供的任务调度工具&#xff0c;可以按照约定的时间自动执行某个代码逻辑。 作用&#xff1a;定时自动执行某段Java代码 应用场景&#xff1a; 信用卡每月还款提醒 银行贷款每月还款提醒 火车票售票系统处理未支付订单 入职纪念日为用户发送通知 一.…

20 轮转数组

20 轮转数组 20.1 轮转数组解决方案 class Solution { public:void rotate(vector<int>& nums, int k) {int n nums.size();k k % n; // 如果 k 大于数组长度&#xff0c;取模减少不必要的旋转// 第一步&#xff1a;反转整个数组reverse(nums.begin(), nums.end(…

字符串相关题解

目录 字母异位词 最长公共前缀 博主主页&#xff1a;东洛的克莱斯韦克-CSDN博客 字母异位词 49. 字母异位词分组 - 力扣&#xff08;LeetCode&#xff09; 这道题更像一道语法题&#xff0c;考察对容器的掌握情况。如果按题目要求去模拟&#xff0c;不仅要分析每个字符串&am…