当前位置: 首页 > news >正文

【linux】linux工具使用

这一章完全可以和前两篇文件归类在一起,可以选择放一起看哦

 http://t.csdnimg.cn/aNaAg

 http://t.csdnimg.cn/gkJx7


 

 拖更好久了,抱歉,让我偷了会懒


1. 自动化构建工具 make , makefile

make 是一个命令,makefile 是一个文件(在当前目录下)

make 和 makefile 搭配使用可以实现自动化构建

 

a. 依赖关系

test 依赖于 test.c

b. 依赖方法

$@ : 指的是依赖关系的左边

$^ : 指的是依赖关系的右边

也可以直接写成: gcc -o test test.c

c. 原理

make是如何工作的 ?

  1. 在默认的方式下,也就是我们只输入make命令。那么, make会在当前目录下找名字叫“Makefile”或“makefile”的文件 (前提是依赖关系第一个必须和要编译文件有关)
  2. 如果找到,它会找文件中的第一个目标文件(target),并把这个文件作为最终的目标文件
  3. 如果文件不存在,或是这个文件所依赖的后面的文件修改时间要比前面这个文件老(可

以用 touch 测试,如: test 修改时间比test.c更加新),那么,他就会执行后面所定义的命令来生成前面这个文件

  1. make会一层又一层地去找文件的依赖关系,直到最终编译出第一个目标文件
  2. 在找寻的过程中,如果出现错误,比如最后被依赖的文件找不到,那么make就会直接退出,并报错,

而对于所定义的命令的错误,或是编译不成功,make根本不理

d. make 判断是否需要重新编译

  1. 判断源文件的修改时间和可执行文件的修改时间(如果源文件没有修改:其修改时间比可执行文件早;如果源文件右修改:其修改时间比可执行文件晚)
  1. 如果源文件没有修改,则再使用 make 是不会编译的 ; 如果源文件有修改,则可以使用 make 重新编译

三种时间:

  1. Access:

最近一次进入文件时间,包括进入文件,或者修改文件内容

  1. Modify:

最近一次修改文件内容的时间

注:

touch + 没有创建的文件名

新创一个文件

touch + 有创建的文件名

更新时间

所以 touch 对 Modify 有影响

  1. Change:

最近一次修改文件属性的时间

回车换行:

回车( \r ):光标回到这一行的最开始处

换行( \n ):光标跳到下一行的最开始处

e. 文件清理

  • make clean

清理文件

注意:

我们将它设置为伪目标,用 .PHONY 修饰,伪目标的特性是,总是可以被

执行

2. git 工具

  • git + clone + 仓库里链接

与远程仓库链接

  • git + add + 路径 / git + add + 文件名

添加该路径下的文件(没有被添加过的)

  • git + commit + -m + "标注信息"

提交改动到本地

注:

第一次使用git,可能会出现一些问题:

注:名字和邮箱换成自己的就好了

  • git + push

提交到远程仓库里面

相关文章:

【linux】linux工具使用

这一章完全可以和前两篇文件归类在一起,可以选择放一起看哦 http://t.csdnimg.cn/aNaAg http://t.csdnimg.cn/gkJx7 拖更好久了,抱歉,让我偷了会懒 1. 自动化构建工具 make , makefile make 是一个命令,makefile 是一个文件&…...

Docker需要代理下载镜像

systemctl status docker查看docker的状态和配置文件是/usr/lib/systemd/system/docker.service vi /usr/lib/systemd/system/docker.service, 增加如下配置项 [Service] Environment"HTTP_PROXYhttp://proxy.example.com:8080" "HTTPS_PROXYhttp:…...

Debian操作系统简史

一,起源和初衷 Debian项目始于1993年,由Ian Murdock发起,他当时是普渡大学的一名学生。Debian的名字来源于Ian Murdock和他的妻子Debra的组合。Debian的核心理念是创建一个完全自由的操作系统,它遵循严格的自由软件指导原则。 二…...

课堂练习——路由策略

需求:将1.1.1.0/24网段重发布到网络中,不允许出现次优路径,实现全网可达。 在R1上重发布1.1.1.0/24网段,但是需要过滤192.168.12.0/24和192.168.13.0/24在R2和R3上执行双向重发布 因为R1引入的域外路由信息的优先级为150&#xff…...

Agent AI智能体:未来社会的角色、发展与挑战

Agent AI智能体在未来社会中的角色、发展路径以及可能带来的挑战是一个非常值得关注的话题。让我们来深入探讨一下这些方面。 1. 角色与应用场景 Agent AI智能体是指具有自主决策能力和执行能力的人工智能系统,它们可以代表个人或组织执行各种任务和活动。在未来社…...

mybatis-plus使用指南(1)

快速开始 首先 我们 在创建了一个基本的springboot的基础框架以后&#xff0c;在 pom文件中 引入 mybatisplus的相关依赖 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5…...

python自定义x坐标名称

在画完图后加上 x[0.1,0.5,1.0,2.0,4.0,6.0,8.0] plt.xticks(x) import matplotlib.pyplot as pltx [1, 2, 3, 4, 5] y [2, 4, 6, 8, 10]plt.plot(x, y) plt.xticks(x, [A, B, C, D, E]) # 设置x轴坐标位置和标签 plt.show()要自定义x坐标名称&#xff0c;你可以使用matplo…...

图论专题训练

leecode 547 并查集 class Solution { public:int findCircleNum(vector<vector<int>>& isConnected) {ini();int len isConnected.size();for(int i0;i<len;i){for(int j0;j<len;j)if(isConnected[i][j]){unio(i,j);}}int ans 0;for(int i0;i<len;…...

持续总结中!2024年面试必问 100 道 Java基础面试题(四十二)

上一篇地址&#xff1a;持续总结中&#xff01;2024年面试必问 100 道 Java基础面试题&#xff08;四十一&#xff09;-CSDN博客 八十三、如何判断一个对象是否应该被垃圾回收&#xff1f; 在Java中&#xff0c;判断一个对象是否应该被垃圾回收的关键在于对象的引用状态。垃圾…...

Linux 之 tail 命令

一、基本语法 tail [option] [file] 其中 option 是可选参数&#xff0c;用于定制命令的行为&#xff0c;file 则是要处理的目标文件名。 二、常用参数 几个常用的 option 选项&#xff1a; -n&#xff1a;显示文件的最后 n 行&#xff0c;默认为 10 行。-f&#xff1a;实…...

【Android学习】简单的登录页面和业务逻辑实现

实现功能 1 登录页&#xff1a;密码登录和验证码登录 2 忘记密码页&#xff1a;修改密码 3 页面基础逻辑 java代码 基础页面 XML login_main.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.and…...

Mysql数据库的基础学习

为什么使用数据库&#xff1f; 1.持久化&#xff1a;将数据保存到可掉电式存储设备中以供使用。 数据库相关概念&#xff1a; DB:数据库&#xff08;Databass&#xff09;即存储数据的仓库&#xff0c;本质是一个文件系统&#xff0c;保存了一系列有组织的数据DBMS:数据库管…...

CentOS7 安装 Kamailio

https://www.kamailio.org/wiki/packages/rpms 官方文档说 yum -y install yum-utils yum-config-manager --add-repo https://rpm.kamailio.org/centos/kamailio.repo 但目前这样其实行不通 需要这样做&#xff1a; yum install --disablerepokamailio --enablerepokamai…...

Tomcat启动闪退问题解决办法

本文将通过一系列诊断步骤帮助您找出原因&#xff0c;并提供相应的解决办法。 诊断步骤 查看日志文件 Tomcat的日志文件是解决启动问题的第一线工具。查看logs目录下的catalina.out和其他日志文件&#xff0c;这些文件经常记录了错误信息和系统崩溃的线索。 cat /path/to/to…...

单元测试之JUnit5知识点总结及代码示例

单元测试是软件开发过程中的一种验证手段&#xff0c;它针对最小的可测试部分&#xff08;通常是函数或方法&#xff09;进行检查和验证。其实单元测试还是挺重要的&#xff0c;不过国内很多公司的项目其实并没有做好单元测试&#xff0c;或者根本就没做单元测试&#xff0c;原…...

什么是数据平台——企业构建Data+AI的基础数据底座需要的决策参考

什么是数据平台 标准的解释是这样的 Wikipedia A data platform usually refers to a software platform used for collecting and managing data, and acting as a data delivery point for application and reporting software. 数据平台是指将各类数据进行整合、存储、处…...

Oracle 流stream数据的复制

Oracle 流stream数据的复制 --实验的目的是捕获scott.emp1表的变化&#xff0c;将变化应用到远程数据库scott.emp1表中。 --设置初始化参数 AQ_TM_PROCESSES1 COMPATIBLE9.2.0 LOG_PARALLELISM1 GLOBAL_NAMEStrue JOB_QUEUE_PROCESSES2 --查看数据库的名称&#xff0c;我的为o…...

「 安全设计 」68家国内外科技巨头和安全巨头参与了CISA发起的安全设计承诺,包含MFA、默认密码、CVE、VDP等七大承诺目标

美国网络安全和基础设施安全局&#xff08;CISA&#xff0c;CyberSecurity & Infrastructure Security Agency&#xff09;于2024年5月开始呼吁企业是时候将网络安全融入到技术产品的设计和制造中了&#xff0c;并发起了安全设计承诺行动&#xff0c;该承诺旨在补充和建立现…...

【K8S】pod无限重启,报错Back-off restarting failed container

1. 问题 pod启动后一直重启&#xff0c;并报Back-off restarting failed container。 原理&#xff1a; Back-off restarting failed container的Warning事件&#xff0c;一般是由于通过指定的镜像启动容器后&#xff0c;容器内部没有常驻进程&#xff0c;导致容器启动成功后…...

摸鱼文章1

1111111...

大语言模型如何处理长文本?常用文本分割技术详解

为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar&#xff1a;依赖注入与仓储模式实践 在 C# 的应用开发中&#xff0c;数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护&#xff0c;许多开发者会选择成熟的 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;SqlSugar 就是其中备受…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

PostgreSQL——环境搭建

一、Linux # 安装 PostgreSQL 15 仓库 sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装之前先确认是否已经存在PostgreSQL rpm -qa | grep postgres# 如果存在&#xff0…...

破解路内监管盲区:免布线低位视频桩重塑停车管理新标准

城市路内停车管理常因行道树遮挡、高位设备盲区等问题&#xff0c;导致车牌识别率低、逃费率高&#xff0c;传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法&#xff0c;正成为破局关键。该设备安装于车位侧方0.5-0.7米高度&#xff0c;直接规避树枝遮…...

Python 高效图像帧提取与视频编码:实战指南

Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...

Elastic 获得 AWS 教育 ISV 合作伙伴资质,进一步增强教育解决方案产品组合

作者&#xff1a;来自 Elastic Udayasimha Theepireddy (Uday), Brian Bergholm, Marianna Jonsdottir 通过搜索 AI 和云创新推动教育领域的数字化转型。 我们非常高兴地宣布&#xff0c;Elastic 已获得 AWS 教育 ISV 合作伙伴资质。这一重要认证表明&#xff0c;Elastic 作为 …...

[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG

TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码&#xff1a;HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...