Linux学习笔记——Linux实用操作(三)

news2024/12/24 11:28:30

4.10、环境变量

学习目标:

  • 理解环境变量的作用
  • 掌握符号$的作用
  • 掌握在Linux中配置环境变量

4.10.1、环境变量

1、在讲解which命令的时候,我们知道使用的一系列命令其实本质上就是一个个的可执行程序。

比如,cd命令的本体就是:/usr/bin/cd这个程序文件。

我们是否会有疑问,为何无论当前工作目录在哪里,都能执行:/usr/bin/cd这个程序呢?

–这就是环境变量的作用啦。

2、环境变量是操作系统(Windows、Mac、Linux)在运行的时候,记录的一些关键性信息,用以辅助系统运行。

在Linux系统中执行:env命令即可查看当前系统中记录的环境变量

环境变量是一种KeyValue型结构,即名称和值,如下图:

在这里插入图片描述

3、环境变量:PATH

在前面提到的问题中,我们说无论当前工作目录是什么,都能执行:/usr/bin/cd这个程序,这个就是借助环境变量中:PATH这个项目的值来做到的。

在这里插入图片描述

PATH记录了系统执行任何命令的搜索路径,如上图记录了(路径之间以:隔开)

  • /usr/local/bin
  • /usr/bin
  • /usr/local/sbin
  • /usr/sbin
  • /home/kx.local/bin
  • /home/kx/bin

当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序的主体。

比如执行cd命令,就从第二个目录/usr/bin中搜索到了cd命令,并执行。

1、什么是环境变量?

环境变量是一组信息记录,类型是KeyValue型(名称=值),用于操作系统运行的时候记录关键信息。

2、什么是PATH,作用是?

环境变量PATH会记录一组目录,目录之间用:隔开。这里记录的是命令的搜索路径,当执行命令会从记录中记录的目录中挨个搜索要执行的命令并执行。

可以通过修改这个项目的值,加入自定义的命令搜索路径

export PATH=$PATH:自定义路径

4.10.2、$符号

1、在Linux系统中,$符号被用于取“变量”的值。

环境变量记录的信息,除了给操作系统自己使用外,如果我们想要取用,也可以使用。

取得环境变量的值就可以通过语法:$环境变量名 来取得

2、比如:echo $PATH

就可以获得PATH这个环境变量的值,并通过echo语句输出出来。

在这里插入图片描述

又或者:echo ${PATH}ABC

在这里插入图片描述

注意:当和其它内容混合在一起的时候,可以通过{}来标注取的变量是谁

4.10.3、自行设置环境变量

1、Linux环境变量可以用户自行设置,其中分为:

  • 临时设置,语法:export 变量名=变量值

    在这里插入图片描述

  • 永久生效

    • 针对当前用户生效、配置在当前用户的:~/bashrc文件中

      在这里插入图片描述

    • 针对所有用户生效、配置在系统的:/etc/profile文件中

    • 并通过语法:source 配置文件,进行立刻生效,或重新登录FinalShell生效

      在这里插入图片描述

2、自定义环境变量PATH

环境变量PATH这个项目里面记录了系统执行命令的搜索路径。

这些搜索路径我们也可以自行添加到PATH中去。

测试:

  • 在当前HOME目录内创建文件夹,myenv,在文件夹内创建文件mkhaha
  • 通过vim编辑器,在mkhaha文件内填入:echo hahaha

完成上述操作后,随意切换工作目录,执行mkhaha命令尝试一下,会发现无法执行。

  • 修改PATH的值

    临时修改PATH:export PATH=$PATH:/home/kx/myenv,再次执行mkhaha,无论在哪里都能执行了

    或将export PATH=$PATH:/home/kx/myenv填入用户环境变量文件或系统环境变量文件中去

4.11、上传、下载

1、我们可以通过FinalShell工具,方便的和虚拟机进行数据交换。

在FinalShell软件的下方窗体中,提供了Linux的文件系统视图,可以方便的:

  • 浏览文件系统,找到合适的文件,右键点击下载,即可传输到本地电脑
  • 浏览文件系统,找到合适的目录,将本地电脑的文件拓展进入,即可方便的上传数据到Linux中

在这里插入图片描述

2、rz、sz命令

当然,除了通过FinalShell的下方窗体进行文件的传输以外,也可以通过rz、sz命令进行文件传输。

rz、sz命令需要安装,可以通过:yum -y install lrzsz,即可安装。

  • rz命令,进行上传,语法:直接输入rz即可。

  • sz命令,进行下载,语法:sz 要下载的文件

    文件会自动下载到桌面的fsdownload文件夹中。

注意:rz、sz命令需要终端软件支持才可正常运行。

FinalShell、SecureCRT、XShell等常用终端软件均支持此操作。

4.12、压缩、解压

学习目标:

  • 掌握使用tar命令压缩或解压tar或gzip文件
  • 掌握使用zip、unzip命令压缩或解压zip文件

1、压缩格式

市面上有非常多的压缩格式:

  • zip格式:Linux、Windows、MacOS系统常用
  • 7zip格式:Windows系统常用
  • rar格式:Windows系统常用
  • tar格式:Linux、MacOS系统常用
  • gzip格式:Linux、MacOS系统常用

在Windows系统中常用的软件如:winrar、bandizip等软件,都支持各类常见的压缩格式,这里不多做讨论。

我们现在要学习,如何在Linux系统中操作:tar、gzip、zip这三种压缩格式

完成文件的压缩、解压操作。

4.12.1、tar命令

1、Linux和Mac系统常用有2种压缩格式,后缀名分别是:

  • .tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装。
  • .gz,也常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积。

针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作。

语法:tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数N

  • -c,创建压缩文件,用于压缩模式
  • -v,显示压缩、解压过程,用于查看进度
  • -x,解压模式
  • -f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
  • -z,gzip模式,不使用-z就是普通的tarball格式
  • -C,选择要解压的目的地,用于解压模式

2、tar命令压缩

tar的常用组合为:

  • tar -cvf test.tar 1.txt 2.txt 3.txt

    将1.txt 2.txt 3.txt压缩到test.tar文件内

  • tar -zcvf test.tar.gz 1.txt 2.txt 3.txt

    将1.txt 2.txt 3.txt压缩到test.tar.gz文件内,使用gzip模式

注意:

  • -z选项如果使用的话,一般处于选项位第一个
  • -f选项,必须在选项位最后一个

3、tar命令解压

常用的tar解压组合有:

  • tar -xvf test.tar

    解压test.tar,将文件解压到当前目录

  • tar -xvf test.tar -C /home/kx

    解压test.tar,将文件解压至指定目录(/home/kx)

  • tar -zxvf test.tar.gz -C /home/kx

    以Gzip模式解压test.tar.gz,将文件解压至指定目录(/home/kx)

注意:

  • -f选项,必须在选项组合体的最后一位
  • -z选项,建议在开头位置
  • -C选项单独使用,和解压所需的其它参数分开

4.12.2、zip、unzip命令

1、zip命令压缩文件

可以使用zip命令,压缩文件为zip压缩包

语法:zip [-r] 参数1 参数2 ... 参数N

  • -r,被压缩的包含文件夹的时候,需要使用-r选项,和rm、cp等命令的-r效果一致

示例:

  • zip test.zip a.txt b.txt

    将a.txt b.txt c.txt压缩到test.zip文件内

  • zip -r test.zip test itheima a.txt

    将 test itheima两个文件夹和a.txt文件,压缩到test.zip文件内

2、unzip命令解压文件

使用unzip命令,可以方便的解压zip压缩包

语法:unzip [-d] 参数

  • -d,指定要解压去的位置,同tar的-C选项
  • 参数,被解压的zip压缩包文件

示例:

  • unzip test.zip

    将test.zip解压到当前目录

  • unzip test.zip -d /home/kx

    将test.zip解压到指定文件夹内(/home/kx)

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

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

相关文章

股价狂跌超70%,特斯拉到底怎么了?

​在2022年的尾声,曾在新能源汽车领域盛极一时的特斯拉即将取得上市以来最糟糕的年度表现,直接跌出全球上公司市值前10名。目前特斯拉已连续第7个交易日下跌,截至2022年12月28日,跌超11%,创八个月最大跌幅,…

Leetcode 855. 考场就座

在考场里,一排有 N 个座位,分别编号为 0, 1, 2, ..., N-1 。当学生进入考场后,他必须坐在能够使他与离他最近的人之间的距离达到最大化的座位上。如果有多个这样的座位,他会坐在编号最小的座位上。(另外,如果考场里没有…

「回顾2022,展望2023」- 技术和兴趣,工作和生活,我们都在旅途中

技术 Java,云原生,前端 技术面好像变窄了 远离CI/CD,重新回到起点 2019年毕业,2018年9月份在距离学校(南昌)不远不近的公司实习开始实习,毕业后去过深圳、上海,最后是杭州,到现在,又…

OV7670图像传感器介绍

OV7670图像传感器简介 OV7670是图像传感器,其体积小、工作电压低,能提供单片VGA摄像头和影像处理器的所有功能。通过SCCB 总线控制,可以输出整帧、子采样、取窗口等方式的各种分辨率8位影响数据。该产品VGA图像最高达到30帧/秒。用户可以完全…

西门子PLC串口协议与以太网通信协议对比

西门子plc品牌众多,通信协议的类型就更多了,具体可分为串口协议和以太网通信协议两大类。 串口协议主要有:MODBUS RTU 通信协议;PROFIBUS 通信协议;USS通信协议;PPI通信协议;MPI通信协议&#…

YGG:2022年年终回顾

2022 年,Yield Guild Games(YGG)扩大并发展了区块链游戏生态系统和开放的元宇宙。在这篇文章中,我们庆祝我们的公会成员、合作伙伴和社区所取得的里程碑式的成就,并期待接下来的发展。 游戏和基础设施合作伙伴的数量不…

推荐 6 个 GitHub 开源项目

本期推荐开源项目目录:1. B 站自动任务工具2. 学习 Solidity3. 高性能异步抖音爬取工具4. Java学习指南5. 中后台管理系统模版6. ChatGPT 中文调教指南01B 站自动任务工具BiliBiliTool 是一个自动化工具,它可以帮助你每天获取经验、每日签到、批量取关等…

分享几个嵌入式 C 中的实用技巧

1、动态绑定、回调函数 回调函数可以达到动态绑定的作用,在一定程度上可以降低层与层之间的耦合。关于回调函数,之前已经有写过一篇:C语言、嵌入式重点知识:回调函数。可能很多初学的小伙伴可能还不理解回调函数,可以…

【计算机图形学入门】笔记9:Shading3着色(插值、高级纹理映射)

09Shading3着色(插值、高级纹理映射)1.Barycentric Coordinates 重心坐标1.A点自己的重心坐标2.如何求出任意点的重心坐标?2.如何把纹理应用在实际的渲染中?Applying Textures3.Texture Magnification纹理放大。(解决纹…

Transform+ASM插桩系列(1)——熟悉Java字节码

前言 为什么要学习Java字节码呢,因为我们学的是插桩字节码技术,这块技术的根底就是字节码,要学会字节码的阅读和字节码的编写,虽然现在很多工具可以帮我们阅读和编写,但最根本的知识还是要理解的。万层楼高从地起&…

CTF之MISC题目-西游记

CTF系列文章 第一篇 CTF之密码学题目-classical && coding 第二篇 CTF之MISC题目-西游记 文章目录CTF系列文章前言一、题目是什么?二、解题步骤1.下载文件,解压2.暴力破解3.解压文件4.处理文本文件5.手动删除多余字符总结前言 CTF中关于MISC&a…

TensorFlow之回归模型-3

1 基本概念 回归模型 线性 线性模型 非线性模型 线性回归 逻辑回归 Log Loss(损失函数) 分类临界值 2 效率预测 如上所示,使用测试数据集进行评估、用图形显示逻辑回归的预测结果,其中,test_features是测试特…

hnu计网实验一-应用协议与数据包分析实验(使用Wireshark)

前言:这是个比较简单的实验,个人认为最难的不是分析部分,而是能否抓到一个好的包。为了抓到一个好的包我试了很多个网站,终于抓京东时抓到了令我个人最满意的包,因为没有其他各种杂乱的报文,就是那几条必要…

直流信号线性放大器非隔离转换模块0-10V转0-12V大功率负载180mA导轨安装

概述: 导轨安装DIN11 NIPO 系列模拟信号放大器是一种将输入信号放大、转换成按比例输出的直流信号放大器。产品广泛应用在电力、远程监控、仪器仪表、医疗设备、工业自控等需要直流信号测控的行业。此系列产品内部采用稳压电路,通过等比例控制线性放大输…

视频转换IC大全和桥接芯片大全

视频转换大全(桥接芯片大全) 本人从事多年视频转换ic多年累计大量宝贵资源,可以和大家交流交流,下面就视频转换或桥接芯片做下相关交流,期望可以帮助大家。 视频转换或视频桥接:就是把视频源的信号格式转成…

《MySQL高级篇》数据库建模工具---PowderDesigner的使用教程

文章目录PowerDesigner的使用11.1 开始界面11.2 概念数据模型11.3 物理数据模型11.4 概念模型转为物理模型11.5 物理模型转为概念模型11.6 物理模型导出SQL语句PowerDesigner的使用 PowerDesigner是一款开发人员常用的数据库建模工具,用户利用该软件可以方便地制作…

Python--字典及基本操作

字典也是 Python 提供的一种常用的数据结构,它用于存放具有映射关系的数据。 比如有份成绩表数据,语文:79,数学:80,英语:92,这组数据看上去像两个列表,但这两个列表的元素…

传统目标跟踪——背景分割法

目录 一、背景分割法 二、流程 三、代码 四、总结 一、背景分割法 传统的前景背景分割方法有GrabCut,分水岭算法,当然也包括一些阈值分割的算法。但是这些算法在应用中往往显得鲁棒性较弱,达不到一个好的分割效果。 现代的背景分割算法融入…

便宜的骨传导耳机好用吗?五款便宜的骨传导耳机推荐

市面上的骨传导耳机价格参差不齐,那价位较低的骨传导耳机能不能入手呢?只能说“一分钱,一分货”但是一些大牌骨传导耳机品牌也会出一些性价比较高的骨传导耳机,依靠大牌技术的加持,耳机的使用体验也会更好。可以看看下…

抓住站点能源革命机遇,必须要了解的十大趋势

编辑 | 阿冒 设计 | 沐由每一天,你做得最多的几件事情是什么?喝八回水,吃三次饭,还有空闲的时候起身溜达几圈,以及穿插其间、难以计数的查看手机次数?可以说,我们中的绝大多数每天在手机上花…