当前位置: 首页 > 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...

深度学习编译器优化:CNN与MHA块的性能差异与实践指南

1. 深度学习编译器优化概述在深度学习模型部署的实际场景中&#xff0c;我们常常面临一个关键矛盾&#xff1a;训练框架&#xff08;如PyTorch&#xff09;的动态图特性虽然灵活&#xff0c;但在推理时会产生显著的性能开销。这正是深度学习编译器技术大显身手的领域——通过静…...

SAP顾问实战:给MB51报表加供应商名称和原因代码,完整隐式增强教程

SAP顾问实战&#xff1a;MB51报表增强之供应商与原因代码集成指南 在SAP项目实施过程中&#xff0c;业务用户对标准报表的抱怨几乎成为每个顾问的日常。"为什么不能在一个报表里看到所有信息&#xff1f;"——MB51物料凭证清单作为物料移动的核心查询工具&#xff0c…...

告别FTP!用Go写的Filebrowser,一个命令搞定Windows/Linux跨平台文件管理

告别FTP&#xff01;用Go语言构建的Filebrowser&#xff0c;一条命令实现全平台文件管理革命 在服务器管理和跨平台文件共享的日常工作中&#xff0c;传统FTP工具早已显露出诸多不便&#xff1a;复杂的客户端配置、不直观的界面操作、安全隐患频发。而现代开发者需要的&#xf…...

告别数据壁垒:用ArcGIS Editor for OSM插件,5分钟搞定OSM数据下载与本地编辑

告别数据壁垒&#xff1a;用ArcGIS Editor for OSM插件&#xff0c;5分钟搞定OSM数据下载与本地编辑 在空间数据分析领域&#xff0c;OpenStreetMap&#xff08;OSM&#xff09;作为开放的全球地理数据库&#xff0c;已成为许多GIS从业者的重要数据来源。然而&#xff0c;传统O…...

Perplexity+知网联合检索的7类失效场景全图谱:从DOI解析失败到CSSCI标识丢失的终极修复手册

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Perplexity知网联合检索的失效机理总论 当用户尝试将 Perplexity AI 的实时网络推理能力与知网&#xff08;CNKI&#xff09;学术资源库进行协同调用时&#xff0c;系统级耦合在协议层、语义层与权限层…...

芯片Signoff中的不确定性风险管理:工艺角、蒙特卡洛与签核验证

1. 项目概述&#xff1a;芯片Signoff中的不确定性风险管理在芯片设计的最后阶段&#xff0c;也就是我们常说的Signoff&#xff08;签核&#xff09;&#xff0c;工程师们面临的最大挑战之一&#xff0c;就是如何与无处不在的“不确定性”共舞。这里的“不确定性”&#xff0c;专…...

The import xxx.xxx.xxx is never used

The import xxx.xxx.xxx is never used List is a raw type. References to generic type List<E> should be parameterized Dead code The value of the local variable d is not used代码洁癖啊&#xff0c;为啥这些这么多黄色警告都不处理呢。 没有用的代码&#xff0…...

接入 Taotoken 后从账单明细中分析各阶段模型使用占比与成本变化

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 接入 Taotoken 后从账单明细中分析各阶段模型使用占比与成本变化 在项目开发中引入大模型能力后&#xff0c;一个常见的困惑是&…...

告别打包失败!Matlab开发者必看:Runtime版本精准匹配与离线部署全攻略

MATLAB Runtime精准匹配与离线部署实战指南 当MATLAB开发者遭遇Runtime版本陷阱 深夜的办公室里&#xff0c;王工程师盯着屏幕上第7次打包失败的红色错误提示&#xff0c;揉了揉酸胀的眼睛。这个场景对许多MATLAB开发者来说并不陌生——明明在自己的R2022b Update 3环境中完美运…...

从MobileNet到HRNet:如何为你的DeepLabV3+项目挑选最合适的PyTorch骨干网络?

从MobileNet到HRNet&#xff1a;DeepLabV3骨干网络选型实战指南 当你面对Pascal VOC数据集上89%的mIoU和Cityscapes上82.1%的基准成绩时&#xff0c;是否思考过这些数字背后隐藏的工程抉择&#xff1f;在图像分割领域&#xff0c;骨干网络的选择往往决定着项目成败——它既影响…...